time="2024-09-24T10:25:36Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-authorization-1 Creating Container integration-test-authentication-1 Creating Container integration-test-experiment-1 Creating Container integration-test-device-1 Creating Container integration-test-federation-1 Creating Container integration-test-gateway-1 Creating Container integration-test-gateway-1 Created Container integration-test-authorization-1 Created Container integration-test-device-1 Created Container integration-test-federation-1 Created Container integration-test-authentication-1 Created Container integration-test-experiment-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/lti_service.conf to /etc/nginx/lti_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"} federation-1 | {"level":"info","message":"Federation Service started successfully"} authorization-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authorization-1 | {"addrs":["localhost:3011"],"diagnostic-addrs":[],"level":"info","msg":"Initializing server.","subsystem":"opa","time":"2024-09-24T10:27:15Z"} experiment-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authorization-1 | {"client_addr":"127.0.0.1:49644","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-09-24T10:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:49644","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.31598,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:27:16Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1727173636.60765} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1727173636.6525254} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1727173636.653849} 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":1727173636.6546159} 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":1727173636.6553211} 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":1727173636.656622,"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":1727173636.658753} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1727173636.6772761} device-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} 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:35334","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-09-24T10:27:16.808668557Z","id":"01J8HS4CP8AWZXPZRPP7GTHH35","name":"crosslab","updated_at":"2024-09-24T10:27:16.808668557Z"},"request_id":"a90f3b5a-07b9-4dc0-964d-55c18c2ab101","subsystem":"openfga","timestamp":1727173636.808866} 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:35334","raw_request":{"schema_version":"1.1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_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":"01J8HS4D3NYXQCNNK44E3DSQDC"},"request_id":"d1f63095-0cbd-4a26-857c-7450f157d471","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173637.2374785} authentication-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authorization-1 | {"current_version":"0.54.0","download_opa":"https://openpolicyagent.org/downloads/v0.68.0/opa_linux_amd64","latest_version":"0.68.0","level":"info","msg":"OPA is out of date.","release_notes":"https://github.com/open-policy-agent/opa/releases/tag/v0.68.0","subsystem":"opa","time":"2024-09-24T10:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:49644","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-09-24T10:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49644","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.227994,"resp_status":204,"subsystem":"opa","time":"2024-09-24T10:27:17Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} device-1 | {"level":"info","message":"Device Service started successfully"} authentication-1 | {"level":"info","message":"Authentication Service started successfully"} gateway-1 | {"time_local":"24/Sep/2024:10:27:57 +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.049","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"bff67ea8a982a7da85ea6c45e0c180b1"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 43ms","method":"HEAD","requestID":"bff67ea8a982a7da85ea6c45e0c180b1","responseTime":43,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"24/Sep/2024:10:27:57 +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.025","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"4e2a77b1682b8f8d8ba9cc39831e3850"} device-1 | {"level":"info","message":"HEAD /device/status 200 16ms","method":"HEAD","requestID":"aa5fc6a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"24/Sep/2024:10:27:57 +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.016","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"9ce09b490f45cb5c93026714607d3ae8"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 7ms","method":"HEAD","requestID":"9ce09b490f45cb5c93026714607d3ae8","responseTime":7,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"24/Sep/2024:10:27:57 +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.043","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"1468ed992a45fad258a4662cdc7723c0"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 37ms","method":"HEAD","requestID":"aa6c70d0-7a5f-11ef-97e6-3b69ebf70d85","responseTime":37,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"24/Sep/2024:10:27:57 +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.055","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"886667632e97333180c86e7efb92195e"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 45ms","method":"HEAD","requestID":"aa7b16d0-7a5f-11ef-abac-f19fe89e0c7d","responseTime":45,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"24/Sep/2024:10:28:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.252","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3772a155db472ce6e0b46251fdd3ccf9"} authentication-1 | {"level":"info","message":"POST /login 201 212ms","method":"POST","requestID":"3772a155db472ce6e0b46251fdd3ccf9","responseTime":212,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzY5NH0.w0Dqhe4PyKoO-WL2cx_5shQzgYTNjty6MJoOE8vohkg","level":"info","message":"auth send jwt","requestID":"d62bb98a5d0b0e14fc304458f51b8c6c"} authentication-1 | {"level":"info","message":"GET /auth 200 50ms","method":"GET","requestID":"d62bb98a5d0b0e14fc304458f51b8c6c","responseTime":50,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d62bb98a5d0b0e14fc304458f51b8c6c"} authorization-1 | {"client_addr":"127.0.0.1:37238","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:14Z"} authorization-1 | {"client_addr":"127.0.0.1:37238","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.739299,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d62bb98a5d0b0e14fc304458f51b8c6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173694,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzY5NH0.w0Dqhe4PyKoO-WL2cx_5shQzgYTNjty6MJoOE8vohkg"} authorization-1 | {"level":"info","message":"POST /authorize 200 65ms","method":"POST","requestID":"d62bb98a5d0b0e14fc304458f51b8c6c","responseTime":65,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0eed73fd-05db-4afb-bc89-df54e296ec0e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173694.6367257} authorization-1 | {"level":"info","message":"POST /relations/query 200 35ms","method":"POST","requestID":"d62bb98a5d0b0e14fc304458f51b8c6c","responseTime":35,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8eb5f0a4-e2db-4a20-8a20-28c65c5b2f6b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173694.7426066} authorization-1 | {"level":"info","message":"POST /relations/update 200 48ms","method":"POST","requestID":"d62bb98a5d0b0e14fc304458f51b8c6c","responseTime":48,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"956300eb-3de3-4c02-a0a6-73f5502ee04d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173694.8014379} authorization-1 | {"level":"info","message":"POST /relations/update 200 65ms","method":"POST","requestID":"d62bb98a5d0b0e14fc304458f51b8c6c","responseTime":65,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9ea392b-a713-4f9a-9170-174b2dee6e1b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173694.8059735} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:14.801414819Z"}]},"request_id":"3b1af3f7-8402-40d0-a054-bc6f86b8322e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173694.8407454} authorization-1 | {"level":"info","message":"POST /relations/query 200 32ms","method":"POST","requestID":"d62bb98a5d0b0e14fc304458f51b8c6c","responseTime":32,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d62bb98a5d0b0e14fc304458f51b8c6c"} gateway-1 | {"time_local":"24/Sep/2024:10:28:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.841","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d62bb98a5d0b0e14fc304458f51b8c6c"} device-1 | {"level":"info","message":"POST /devices? 201 777ms","method":"POST","requestID":"d62bb98a5d0b0e14fc304458f51b8c6c","responseTime":777,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzY5NH0.w0Dqhe4PyKoO-WL2cx_5shQzgYTNjty6MJoOE8vohkg","level":"info","message":"auth send jwt","requestID":"87c1750e9fcf81fede96af19ea523827"} authentication-1 | {"level":"info","message":"GET /auth 200 33ms","method":"GET","requestID":"87c1750e9fcf81fede96af19ea523827","responseTime":33,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"87c1750e9fcf81fede96af19ea523827"} authorization-1 | {"client_addr":"127.0.0.1:37238","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:14Z"} authorization-1 | {"client_addr":"127.0.0.1:37238","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.037974,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"87c1750e9fcf81fede96af19ea523827","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173694,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzY5NH0.w0Dqhe4PyKoO-WL2cx_5shQzgYTNjty6MJoOE8vohkg"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"87c1750e9fcf81fede96af19ea523827","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2924b115-3a09-407b-b52a-be23b32ae91b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173695.1250188} authorization-1 | {"level":"info","message":"POST /relations/query 200 39ms","method":"POST","requestID":"87c1750e9fcf81fede96af19ea523827","responseTime":39,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c4b7014-eb3a-4858-84f4-1403bba93fd4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173695.2160368} authorization-1 | {"level":"info","message":"POST /relations/update 200 60ms","method":"POST","requestID":"87c1750e9fcf81fede96af19ea523827","responseTime":60,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"5cb95559-b3de-4fac-921d-4e04b682fa0a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173695.316551} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d2496fa0-ec13-4ce4-a3da-d86ebdcf9c23","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173695.3178556} authorization-1 | {"level":"info","message":"POST /relations/update 200 105ms","method":"POST","requestID":"87c1750e9fcf81fede96af19ea523827","responseTime":105,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:15.316536122Z"}]},"request_id":"f2358332-e7ef-4966-acd5-f77f17647825","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173695.3311784} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"87c1750e9fcf81fede96af19ea523827"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.421","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87c1750e9fcf81fede96af19ea523827"} device-1 | {"level":"info","message":"POST /devices? 201 384ms","method":"POST","requestID":"87c1750e9fcf81fede96af19ea523827","responseTime":384,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 13ms","method":"POST","requestID":"87c1750e9fcf81fede96af19ea523827","responseTime":13,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d108a6e59fde047c47b4a9140075b371","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 8ms","method":"GET","requestID":"d108a6e59fde047c47b4a9140075b371","responseTime":8,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:28:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4b22aac1-affc-4e5f-a5a5-a28717110342/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.009","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":"d108a6e59fde047c47b4a9140075b371"} device-1 | {"level":"info","message":"OPTIONS /devices/4b22aac1-affc-4e5f-a5a5-a28717110342/websocket 200 3ms","method":"OPTIONS","requestID":"d108a6e59fde047c47b4a9140075b371","responseTime":3,"status":200,"url":"/devices/4b22aac1-affc-4e5f-a5a5-a28717110342/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g","level":"info","message":"auth send jwt","requestID":"41197079d636a5148b84a3ce0180d9f6"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"41197079d636a5148b84a3ce0180d9f6","responseTime":11,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"711f4a1c1ad7c8262fb6351ef85290ef","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":"711f4a1c1ad7c8262fb6351ef85290ef","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"41197079d636a5148b84a3ce0180d9f6"} gateway-1 | {"time_local":"24/Sep/2024:10:28:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.020","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":"711f4a1c1ad7c8262fb6351ef85290ef"} device-1 | {"level":"info","message":"OPTIONS /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/websocket 200 6ms","method":"OPTIONS","requestID":"711f4a1c1ad7c8262fb6351ef85290ef","responseTime":6,"status":200,"url":"/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"41197079d636a5148b84a3ce0180d9f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173700,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g","level":"info","message":"auth send jwt","requestID":"4bf9e9666330343c53278538df428a99"} authentication-1 | {"level":"info","message":"GET /auth 200 38ms","method":"GET","requestID":"4bf9e9666330343c53278538df428a99","responseTime":38,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 54ms","method":"POST","requestID":"41197079d636a5148b84a3ce0180d9f6","responseTime":54,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.27703,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:20Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4bf9e9666330343c53278538df428a99"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.958531,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"4bf9e9666330343c53278538df428a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173700,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"4bf9e9666330343c53278538df428a99","responseTime":38,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4bf9e9666330343c53278538df428a99"} device-1 | {"level":"info","message":"POST /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/websocket 200 134ms","method":"POST","requestID":"4bf9e9666330343c53278538df428a99","responseTime":134,"status":200,"url":"/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:28:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.180","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":"4bf9e9666330343c53278538df428a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"41197079d636a5148b84a3ce0180d9f6"} gateway-1 | {"time_local":"24/Sep/2024:10:28:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4b22aac1-affc-4e5f-a5a5-a28717110342/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.287","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":"41197079d636a5148b84a3ce0180d9f6"} device-1 | {"level":"info","message":"POST /devices/4b22aac1-affc-4e5f-a5a5-a28717110342/websocket 200 245ms","method":"POST","requestID":"41197079d636a5148b84a3ce0180d9f6","responseTime":245,"status":200,"url":"/devices/4b22aac1-affc-4e5f-a5a5-a28717110342/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g","level":"info","message":"auth send jwt","requestID":"15eeccfdb01c70cd27e50525227ee184"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"15eeccfdb01c70cd27e50525227ee184","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"15eeccfdb01c70cd27e50525227ee184"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.989488,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"15eeccfdb01c70cd27e50525227ee184","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173700,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"15eeccfdb01c70cd27e50525227ee184","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:14.801414819Z"}]},"request_id":"3f9ac759-43dc-43e5-b457-3ebf3c828c69","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173700.5178585} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"15eeccfdb01c70cd27e50525227ee184","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"15eeccfdb01c70cd27e50525227ee184"} gateway-1 | {"time_local":"24/Sep/2024:10:28:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4b22aac1-affc-4e5f-a5a5-a28717110342? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.086","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15eeccfdb01c70cd27e50525227ee184"} device-1 | {"level":"info","message":"GET /devices/4b22aac1-affc-4e5f-a5a5-a28717110342? 200 126ms","method":"GET","requestID":"15eeccfdb01c70cd27e50525227ee184","responseTime":126,"status":200,"url":"/devices/4b22aac1-affc-4e5f-a5a5-a28717110342?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"26bc5c13ca4c17f76e16cd4219a9fc88"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.881724,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:20Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g","level":"info","message":"auth send jwt","requestID":"26bc5c13ca4c17f76e16cd4219a9fc88"} authentication-1 | {"level":"info","message":"GET /auth 200 60ms","method":"GET","requestID":"26bc5c13ca4c17f76e16cd4219a9fc88","responseTime":60,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"26bc5c13ca4c17f76e16cd4219a9fc88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173700,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g"} authorization-1 | {"level":"info","message":"POST /authorize 200 59ms","method":"POST","requestID":"26bc5c13ca4c17f76e16cd4219a9fc88","responseTime":59,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:15.316536122Z"}]},"request_id":"d4aeca8e-0541-415a-857f-978f9719e5e8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173700.7019987} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"26bc5c13ca4c17f76e16cd4219a9fc88","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"26bc5c13ca4c17f76e16cd4219a9fc88"} device-1 | {"level":"info","message":"GET /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9? 200 132ms","method":"GET","requestID":"26bc5c13ca4c17f76e16cd4219a9fc88","responseTime":132,"status":200,"url":"/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"26bc5c13ca4c17f76e16cd4219a9fc88"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g","level":"info","message":"auth send jwt","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"4e81f998f98a9291f51f0a1d70e64ae9","responseTime":8,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:20Z"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.995963,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"4e81f998f98a9291f51f0a1d70e64ae9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173700,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"4e81f998f98a9291f51f0a1d70e64ae9","responseTime":33,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Attempting to run experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Attempting to book experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Successfully booked experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b8eac490-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b8ebfd10-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:21Z"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.907952,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b8eac490-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173700,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"b8eac490-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:21Z"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":4.876676,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b8ebfd10-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173700,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"b8ebfd10-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:14.801414819Z"}]},"request_id":"d055f5c1-7c63-4f1e-ace6-35af1a8d8efa","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173701.5043805} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"b8eac490-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:15.316536122Z"}]},"request_id":"04afca59-a681-4586-a135-f9462d6583c6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173701.5204213} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"b8ebfd10-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b8eac490-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4b22aac1-affc-4e5f-a5a5-a28717110342? 200 63ms","method":"GET","requestID":"b8eac490-7a5f-11ef-8bac-49f2f0d74a99","responseTime":63,"status":200,"url":"/devices/4b22aac1-affc-4e5f-a5a5-a28717110342?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b8ebfd10-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9? 200 59ms","method":"GET","requestID":"b8ebfd10-7a5f-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Setting up experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Successfully set up experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b9213de0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:21Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b9275860-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.511752,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b9213de0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173700,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g"} authorization-1 | {"level":"info","message":"POST /authorize 200 42ms","method":"POST","requestID":"b9213de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b9281bb0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:21Z"} authorization-1 | {"client_addr":"127.0.0.1:37242","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.947564,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b9275860-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173700,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"b9275860-7a5f-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Successfully running experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:21Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:15.316536122Z"}]},"request_id":"fde3ced8-39ae-4baf-a58b-c45a494d0ec4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173701.9002037} authorization-1 | {"level":"info","message":"POST /relations/query 200 42ms","method":"POST","requestID":"b9275860-7a5f-11ef-8bac-49f2f0d74a99","responseTime":42,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:14.801414819Z"}]},"request_id":"1cbb8a3e-ac36-444c-b953-62f055c948c4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173701.9323678} authorization-1 | {"level":"info","message":"POST /relations/query 200 37ms","method":"POST","requestID":"b9213de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b9275860-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9? 200 87ms","method":"GET","requestID":"b9275860-7a5f-11ef-8bac-49f2f0d74a99","responseTime":87,"status":200,"url":"/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6614eda2-d6f8-45a8-b4d1-57fa0248f930","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173701.9472628} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":56.945393,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b9281bb0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","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":"b9213de0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4b22aac1-affc-4e5f-a5a5-a28717110342? 200 135ms","method":"GET","requestID":"b9213de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":135,"status":200,"url":"/devices/4b22aac1-affc-4e5f-a5a5-a28717110342?"} authorization-1 | {"level":"info","message":"POST /authorize 200 85ms","method":"POST","requestID":"b9281bb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":85,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b936c1b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdad8e474-19f2-41aa-85f4-3dc7e38ef43c#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdad8e474-19f2-41aa-85f4-3dc7e38ef43c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"3ff4b00a-8e02-47a3-b3ab-8780fc8aa4fe","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173702.0006137} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a16ecb28-9ea2-47fa-80e9-d7af4f4f6fc4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173702.0022728} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b9281bb0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b22aac1-affc-4e5f-a5a5-a28717110342/signaling 200 153ms","method":"POST","requestID":"b9281bb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":153,"status":200,"url":"/devices/4b22aac1-affc-4e5f-a5a5-a28717110342/signaling"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c254fe49-c4aa-4e24-ae88-be88810544b1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173702.0150905} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b940acc0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/update 200 165ms","method":"POST","requestID":"4e81f998f98a9291f51f0a1d70e64ae9","responseTime":165,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.146997,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b936c1b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 69ms","method":"POST","requestID":"b936c1b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":69,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.351003,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b940acc0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","object_type":"device","rebac_allow":false,"scope_allow":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":"b940acc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3df22dd-4e8b-407e-a0e7-d09dfd8dfc91","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173702.077137} experiment-1 | {"data":{"experiment":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b936c1b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b22aac1-affc-4e5f-a5a5-a28717110342/signaling 200 179ms","method":"POST","requestID":"b936c1b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":179,"status":200,"url":"/devices/4b22aac1-affc-4e5f-a5a5-a28717110342/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b940acc0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/signaling 200 117ms","method":"POST","requestID":"b940acc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":117,"status":200,"url":"/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/signaling"} gateway-1 | {"time_local":"24/Sep/2024:10:28:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"1.381","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 1331ms","method":"POST","requestID":"4e81f998f98a9291f51f0a1d70e64ae9","responseTime":1331,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b953e6a0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.48106,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f64eeb71-d299-4965-83ee-c2a14bd23d75","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173702.1645849} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b953e6a0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMn0.uOxsaE8L9zVxVGUldBrSzlWTuWP3C58tgdKssQeKVzY","level":"info","message":"auth send jwt","requestID":"5e51734de31dd02a8e144e3bd1abb636"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b953e6a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e51734de31dd02a8e144e3bd1abb636"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"5e51734de31dd02a8e144e3bd1abb636","responseTime":11,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b953e6a0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/signaling 200 59ms","method":"POST","requestID":"b953e6a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.983812,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:22Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5e51734de31dd02a8e144e3bd1abb636","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173702,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMn0.uOxsaE8L9zVxVGUldBrSzlWTuWP3C58tgdKssQeKVzY"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Building connection plan","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"5e51734de31dd02a8e144e3bd1abb636","responseTime":14,"status":200,"url":"/authorize"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"1ebf1da3-49ad-4b06-94e5-5decf1a128bd"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"8927b73a-b92b-4fbe-8ddb-5164933e0a01"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"78069f88-2e64-4c3d-8c01-2b403c3ccf61"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:14.801414819Z"}]},"request_id":"0d3ebd60-b351-44ca-8043-b857d8ce74c8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173702.2282357} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"5e51734de31dd02a8e144e3bd1abb636","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b95f7f60-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":25.529734,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b95f7f60-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173700,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMH0.-6ATcT7jlEneht3zE6Uo3El528PB4zT4Y3xfJkBzZ4g"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e51734de31dd02a8e144e3bd1abb636"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"b95f7f60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:28:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4b22aac1-affc-4e5f-a5a5-a28717110342? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.115","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e51734de31dd02a8e144e3bd1abb636"} device-1 | {"level":"info","message":"GET /devices/4b22aac1-affc-4e5f-a5a5-a28717110342? 200 101ms","method":"GET","requestID":"5e51734de31dd02a8e144e3bd1abb636","responseTime":101,"status":200,"url":"/devices/4b22aac1-affc-4e5f-a5a5-a28717110342?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"6c4e8749-ceed-43e9-ad83-a2ea54cc5ba7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173702.3603451} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0dd1eccc-b072-4d2d-a580-7aff9f8c266f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173702.3607135} authorization-1 | {"level":"info","message":"POST /relations/update 200 67ms","method":"POST","requestID":"b95f7f60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":67,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMn0.uOxsaE8L9zVxVGUldBrSzlWTuWP3C58tgdKssQeKVzY","level":"info","message":"auth send jwt","requestID":"d928a38223952d6df9a4b01dc2e1d5b5"} authentication-1 | {"level":"info","message":"GET /auth 200 32ms","method":"GET","requestID":"d928a38223952d6df9a4b01dc2e1d5b5","responseTime":32,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932725,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d928a38223952d6df9a4b01dc2e1d5b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173702,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwMn0.uOxsaE8L9zVxVGUldBrSzlWTuWP3C58tgdKssQeKVzY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d928a38223952d6df9a4b01dc2e1d5b5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d928a38223952d6df9a4b01dc2e1d5b5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:15.316536122Z"}]},"request_id":"e1a0441d-4688-49c1-b093-0819926e0285","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173702.396399} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"d928a38223952d6df9a4b01dc2e1d5b5","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b95f7f60-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b95f7f60-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c'","requestID":"b95f7f60-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c'","requestID":"b95f7f60-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b95f7f60-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 262ms","method":"POST","requestID":"b95f7f60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":262,"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":"d928a38223952d6df9a4b01dc2e1d5b5"} gateway-1 | {"time_local":"24/Sep/2024:10:28:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d928a38223952d6df9a4b01dc2e1d5b5"} device-1 | {"level":"info","message":"GET /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9? 200 118ms","method":"GET","requestID":"d928a38223952d6df9a4b01dc2e1d5b5","responseTime":118,"status":200,"url":"/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b95f7f60-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c","device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","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/16595b70-455e-49e7-b5e1-5486eaaa497c","device":"4b22aac1-affc-4e5f-a5a5-a28717110342","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/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4e81f998f98a9291f51f0a1d70e64ae9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b99caf70-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":31.531545,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbeceae9-b5b9-411a-8300-04bd0c580e8e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173702.6660962} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b99caf70-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 55ms","method":"POST","requestID":"b99caf70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":55,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b99caf70-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b22aac1-affc-4e5f-a5a5-a28717110342/signaling 200 66ms","method":"POST","requestID":"b99caf70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":66,"status":200,"url":"/devices/4b22aac1-affc-4e5f-a5a5-a28717110342/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b9abcaa0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.341425,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:22Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2fce559-0e08-4202-987f-e4feb7c57338","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173702.7377036} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b9abcaa0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","object_type":"device","rebac_allow":false,"scope_allow":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":"b9abcaa0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b9abcaa0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/signaling 200 23ms","method":"POST","requestID":"b9abcaa0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":23,"status":200,"url":"/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/signaling"} device-1 | {"device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"4b22aac1-affc-4e5f-a5a5-a28717110342","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"4b22aac1-affc-4e5f-a5a5-a28717110342","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 7858246711444735927 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:K7Iy\r\na=ice-pwd:QXsMgpPyDvLGtvIqdoI6I37B\r\na=ice-options:trickle\r\na=fingerprint:sha-256 36:96:FF:88:8F:2A:BB:95:55:5C:6E:D7:62:8A:01:1C:15:96:00:D2:C3:0F:A0:C0:04:59:55:4B:F7:CA:A5:94\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"4b22aac1-affc-4e5f-a5a5-a28717110342","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8037625634505129768 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:ZqvI\r\na=ice-pwd:7YB4nBIghbXIxcX8iPHbgOKY\r\na=ice-options:trickle\r\na=fingerprint:sha-256 25:B6:2B:EC:7C:B8:1F:52:DB:83:B2:CA:F2:09:F5:E3:A4:DB:D5:1D:E6:3E:AF:96:30:1D:AB:EB:8A:C6:CE:EC\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:4117566287 1 udp 2113937151 11aec5b3-1548-4af6-8f3c-4c2dad473824.local 37325 typ host generation 0 ufrag ZqvI network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1715909212 1 udp 1677729535 141.24.211.56 37325 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ZqvI network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","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/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9'"} device-1 | {"content":{"candidate":"candidate:3630827950 1 udp 33562623 141.24.210.113 53890 typ relay raddr 141.24.211.56 rport 37325 generation 0 ufrag ZqvI network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","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/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9'"} device-1 | {"content":{"candidate":"candidate:47992780 1 udp 2113937151 e1e4b276-899e-497d-99c7-bb46e987f016.local 41731 typ host generation 0 ufrag K7Iy network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4b22aac1-affc-4e5f-a5a5-a28717110342","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2263950771 1 udp 1677729535 141.24.211.56 41731 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag K7Iy network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4b22aac1-affc-4e5f-a5a5-a28717110342","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3590101560 1 udp 33562623 141.24.210.113 60606 typ relay raddr 141.24.211.56 rport 41731 generation 0 ufrag K7Iy network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4b22aac1-affc-4e5f-a5a5-a28717110342","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/4b22aac1-affc-4e5f-a5a5-a28717110342'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342'"} device-1 | {"device":"4b22aac1-affc-4e5f-a5a5-a28717110342","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","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/16595b70-455e-49e7-b5e1-5486eaaa497c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"16595b70-455e-49e7-b5e1-5486eaaa497c","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e9ac03de103e75bfeceeb6ff23bb8f72","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":"e9ac03de103e75bfeceeb6ff23bb8f72","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":"new","url":"http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c"}}},"level":"info","message":"received a callback","requestID":"e9ac03de103e75bfeceeb6ff23bb8f72"} device-1 | {"device":"4b22aac1-affc-4e5f-a5a5-a28717110342","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 62ms","method":"POST","requestID":"e9ac03de103e75bfeceeb6ff23bb8f72","responseTime":62,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.072","http_referrer":"","http_user_agent":"node-fetch","requestID":"e9ac03de103e75bfeceeb6ff23bb8f72"} device-1 | {"device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"peerconnection":"16595b70-455e-49e7-b5e1-5486eaaa497c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4b22aac1-affc-4e5f-a5a5-a28717110342","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"16595b70-455e-49e7-b5e1-5486eaaa497c","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/16595b70-455e-49e7-b5e1-5486eaaa497c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"16595b70-455e-49e7-b5e1-5486eaaa497c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} 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/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c"}}},"level":"info","message":"received a callback","requestID":"9e8c2d0092c0cd2512aed8db6eece646"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9e8c2d0092c0cd2512aed8db6eece646","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":"9e8c2d0092c0cd2512aed8db6eece646","responseTime":2,"status":200,"url":"/auth"} device-1 | {"device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ba1cdbf0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":27.428076,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:23Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F16595b70-455e-49e7-b5e1-5486eaaa497c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77bb8331-5821-4d8a-abe5-8987b7aa1c39","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173703.4791706} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ba1cdbf0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c","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 32ms","method":"POST","requestID":"ba1cdbf0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ba1cdbf0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c 200 57ms","method":"GET","requestID":"ba1cdbf0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":57,"status":200,"url":"/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwM30.WjqCCB3rvGut4nHTglFCJxubellW_zpjn0xAJocigF0","level":"info","message":"auth send jwt","requestID":"087b42bc25ad37cabf67c6755a74f7af"} authentication-1 | {"level":"info","message":"GET /auth 200 13ms","method":"GET","requestID":"087b42bc25ad37cabf67c6755a74f7af","responseTime":13,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c","requestID":"087b42bc25ad37cabf67c6755a74f7af"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:23Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba34f7d0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.900975,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"087b42bc25ad37cabf67c6755a74f7af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173703,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwM30.WjqCCB3rvGut4nHTglFCJxubellW_zpjn0xAJocigF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 93ms","method":"POST","requestID":"087b42bc25ad37cabf67c6755a74f7af","responseTime":93,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 172ms","method":"POST","requestID":"9e8c2d0092c0cd2512aed8db6eece646","responseTime":172,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.200","http_referrer":"","http_user_agent":"node-fetch","requestID":"9e8c2d0092c0cd2512aed8db6eece646"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":50.422385,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:23Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85a63c90-382e-4067-8ca9-129d943453cd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173703.6409714} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ba34f7d0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 59ms","method":"POST","requestID":"ba34f7d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c","requestID":"087b42bc25ad37cabf67c6755a74f7af"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba34f7d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/signaling 200 76ms","method":"POST","requestID":"ba34f7d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":76,"status":200,"url":"/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/signaling"} experiment-1 | {"level":"info","message":"GET /experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c 200 182ms","method":"GET","requestID":"087b42bc25ad37cabf67c6755a74f7af","responseTime":182,"status":200,"url":"/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"} gateway-1 | {"time_local":"24/Sep/2024:10:28:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.198","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"087b42bc25ad37cabf67c6755a74f7af"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba41c910-7a5f-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwM30.WjqCCB3rvGut4nHTglFCJxubellW_zpjn0xAJocigF0","level":"info","message":"auth send jwt","requestID":"73e01f9850a8e12a565bfe73d97e67ac"} authentication-1 | {"level":"info","message":"GET /auth 200 41ms","method":"GET","requestID":"73e01f9850a8e12a565bfe73d97e67ac","responseTime":41,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.267221,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:23Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4065be8-bed7-4093-a942-cf61274bdb1a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173703.7480848} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ba41c910-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","object_type":"device","rebac_allow":false,"scope_allow":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":"ba41c910-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c","requestID":"73e01f9850a8e12a565bfe73d97e67ac"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba41c910-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b22aac1-affc-4e5f-a5a5-a28717110342/signaling 200 56ms","method":"POST","requestID":"ba41c910-7a5f-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/devices/4b22aac1-affc-4e5f-a5a5-a28717110342/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":6.535925,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"73e01f9850a8e12a565bfe73d97e67ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173703,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwM30.WjqCCB3rvGut4nHTglFCJxubellW_zpjn0xAJocigF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"73e01f9850a8e12a565bfe73d97e67ac","responseTime":11,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Attempting to finish experiment","requestID":"73e01f9850a8e12a565bfe73d97e67ac"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ba53ca70-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:23Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":29.263608,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ba53ca70-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173703,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwM30.WjqCCB3rvGut4nHTglFCJxubellW_zpjn0xAJocigF0"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"ba53ca70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":35,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c","device":"ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c","device":"4b22aac1-affc-4e5f-a5a5-a28717110342","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/16595b70-455e-49e7-b5e1-5486eaaa497c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"16595b70-455e-49e7-b5e1-5486eaaa497c","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"764fd8c42efd52865b1a1eddf5e305cb","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":"764fd8c42efd52865b1a1eddf5e305cb","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"33b075c6b5e69caa281c1c3dd89df3f5","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 4ms","method":"GET","requestID":"33b075c6b5e69caa281c1c3dd89df3f5","responseTime":4,"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/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c"}}},"level":"info","message":"received a callback","requestID":"764fd8c42efd52865b1a1eddf5e305cb"} 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/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c"}}},"level":"info","message":"received a callback","requestID":"33b075c6b5e69caa281c1c3dd89df3f5"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F16595b70-455e-49e7-b5e1-5486eaaa497c': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F16595b70-455e-49e7-b5e1-5486eaaa497c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"67f78d73-d797-4718-af6e-b27412d4df72","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173703.9479692} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b290abc-303c-4ebe-96b4-f69861890267","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173703.9486613} authorization-1 | {"level":"info","message":"POST /relations/update 200 73ms","method":"POST","requestID":"ba53ca70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":73,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"16595b70-455e-49e7-b5e1-5486eaaa497c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ba53ca70-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c 204 216ms","method":"DELETE","requestID":"ba53ca70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":216,"status":204,"url":"/peerconnections/16595b70-455e-49e7-b5e1-5486eaaa497c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"},"level":"info","message":"Successfully finished experiment","requestID":"73e01f9850a8e12a565bfe73d97e67ac"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba814310-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:24Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba7e5f6b-839c-467a-87c4-7b2b881ab8f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10f6211a-afd5-45a3-a139-4872140d30b6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.168804} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":30.539883,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ba814310-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9","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":"ba814310-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/signaling 200 54ms","method":"POST","requestID":"ba814310-7a5f-11ef-8bac-49f2f0d74a99","responseTime":54,"status":200,"url":"/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba8a1cb0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 56ms","method":"POST","requestID":"ba814310-7a5f-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdad8e474-19f2-41aa-85f4-3dc7e38ef43c': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdad8e474-19f2-41aa-85f4-3dc7e38ef43c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"8f920ef5-26c2-430b-bff3-09cca34868ff","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.1711767} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"13865d35-b46d-4c2a-89fd-7197675a63ae","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.1720765} authorization-1 | {"level":"info","message":"POST /relations/update 200 78ms","method":"POST","requestID":"73e01f9850a8e12a565bfe73d97e67ac","responseTime":78,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:24Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b22aac1-affc-4e5f-a5a5-a28717110342","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f703c2f-de58-4664-83be-14165a0715d6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.2278116} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":30.606859,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ba8a1cb0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"ba8a1cb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":35,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba8a1cb0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b22aac1-affc-4e5f-a5a5-a28717110342/signaling 200 48ms","method":"POST","requestID":"ba8a1cb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/devices/4b22aac1-affc-4e5f-a5a5-a28717110342/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c","requestID":"73e01f9850a8e12a565bfe73d97e67ac"} gateway-1 | {"time_local":"24/Sep/2024:10:28:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.648","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"73e01f9850a8e12a565bfe73d97e67ac"} gateway-1 | {"time_local":"24/Sep/2024:10:28:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2991","request_time":"4.035","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":"809d725995ca8aded9215e78a10845ce"} experiment-1 | {"level":"info","message":"DELETE /experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c 204 670ms","method":"DELETE","requestID":"73e01f9850a8e12a565bfe73d97e67ac","responseTime":670,"status":204,"url":"/experiments/dad8e474-19f2-41aa-85f4-3dc7e38ef43c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 503ms","method":"POST","requestID":"764fd8c42efd52865b1a1eddf5e305cb","responseTime":503,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:28:24 +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.568","http_referrer":"","http_user_agent":"node-fetch","requestID":"764fd8c42efd52865b1a1eddf5e305cb"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4b22aac1-affc-4e5f-a5a5-a28717110342' closed"} gateway-1 | {"time_local":"24/Sep/2024:10:28:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2989","request_time":"4.152","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":"2891980dd1bfd793eccd942b5e5fb8e7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwNH0.ohrnpJv5KF8qi7U9zTktoul7l8BQ8mU3G4XLTgkkSWA","level":"info","message":"auth send jwt","requestID":"12efa262853c0f9bd3f1fe828149e9d9"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"12efa262853c0f9bd3f1fe828149e9d9","responseTime":9,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"12efa262853c0f9bd3f1fe828149e9d9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 551ms","method":"POST","requestID":"33b075c6b5e69caa281c1c3dd89df3f5","responseTime":551,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:28:24 +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.560","http_referrer":"","http_user_agent":"node-fetch","requestID":"33b075c6b5e69caa281c1c3dd89df3f5"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.967941,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"12efa262853c0f9bd3f1fe828149e9d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173704,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwNH0.ohrnpJv5KF8qi7U9zTktoul7l8BQ8mU3G4XLTgkkSWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"12efa262853c0f9bd3f1fe828149e9d9","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d2f38814-2acd-4367-91c2-b0929d052aec","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.5359929} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ba7e5f6b-839c-467a-87c4-7b2b881ab8f9' closed"} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"12efa262853c0f9bd3f1fe828149e9d9","responseTime":14,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5dfd054f-3ae1-40c5-9518-4b1133b8799a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.550435} authorization-1 | {"level":"info","message":"POST /relations/update 200 38ms","method":"POST","requestID":"12efa262853c0f9bd3f1fe828149e9d9","responseTime":38,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"8e924137-2f7d-4b8d-9553-b39011683492","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.596084} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d79935f-9e3d-48d3-8f0e-567f0128a762","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.5974019} authorization-1 | {"level":"info","message":"POST /relations/update 200 52ms","method":"POST","requestID":"12efa262853c0f9bd3f1fe828149e9d9","responseTime":52,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.596069843Z"}]},"request_id":"1acdb8f4-329a-4f59-acfe-403e8ea9f01f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.6062543} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"12efa262853c0f9bd3f1fe828149e9d9"} device-1 | {"level":"info","message":"POST /devices? 201 128ms","method":"POST","requestID":"12efa262853c0f9bd3f1fe828149e9d9","responseTime":128,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"12efa262853c0f9bd3f1fe828149e9d9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwNH0.ohrnpJv5KF8qi7U9zTktoul7l8BQ8mU3G4XLTgkkSWA","level":"info","message":"auth send jwt","requestID":"742a16548738576100b6fba2eb1991fd"} authorization-1 | {"level":"info","message":"POST /relations/query 200 45ms","method":"POST","requestID":"12efa262853c0f9bd3f1fe828149e9d9","responseTime":45,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"GET /auth 200 35ms","method":"GET","requestID":"742a16548738576100b6fba2eb1991fd","responseTime":35,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"742a16548738576100b6fba2eb1991fd"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:24Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.941292,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"742a16548738576100b6fba2eb1991fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173704,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwNH0.ohrnpJv5KF8qi7U9zTktoul7l8BQ8mU3G4XLTgkkSWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 48ms","method":"POST","requestID":"742a16548738576100b6fba2eb1991fd","responseTime":48,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9c25bbbc-f7e9-4820-86fa-2c4cb716b328","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.7364073} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"742a16548738576100b6fba2eb1991fd","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"acc621c0-6818-452c-8f4c-43d7fae94122","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.7687407} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"742a16548738576100b6fba2eb1991fd","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"cf9358c6-1e31-4777-a774-535d1e30e72d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.7833736} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"296ecce1-8431-452f-8660-f4ec1213fa83","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.7846546} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"742a16548738576100b6fba2eb1991fd","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.783359236Z"}]},"request_id":"4e1f780d-a233-4df7-a437-7df527d7c165","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173704.834312} authorization-1 | {"level":"info","message":"POST /relations/query 200 13ms","method":"POST","requestID":"742a16548738576100b6fba2eb1991fd","responseTime":13,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"742a16548738576100b6fba2eb1991fd"} device-1 | {"level":"info","message":"POST /devices? 201 188ms","method":"POST","requestID":"742a16548738576100b6fba2eb1991fd","responseTime":188,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.228","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"742a16548738576100b6fba2eb1991fd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwN30.6oX1CfxdSLSE72wnYcgrfKaGp_JK4BS5F2PH9d74Fc4","level":"info","message":"auth send jwt","requestID":"c939682e79300c12fbfd4155423ec860"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"c939682e79300c12fbfd4155423ec860","responseTime":11,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c939682e79300c12fbfd4155423ec860"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.976296,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c939682e79300c12fbfd4155423ec860","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173707,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwN30.6oX1CfxdSLSE72wnYcgrfKaGp_JK4BS5F2PH9d74Fc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c939682e79300c12fbfd4155423ec860","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.783359236Z"}]},"request_id":"dccaf6f6-d2d1-497d-a253-bf500674c773","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173707.3243747} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c939682e79300c12fbfd4155423ec860","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f35c200-5ce5-45d7-82b0-849751c84149","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173707.3385377} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c939682e79300c12fbfd4155423ec860","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.783359236Z"}]},"request_id":"d32e1d31-f632-4942-9b78-4d8d8f2ad3af","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173707.3892462} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c939682e79300c12fbfd4155423ec860","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c939682e79300c12fbfd4155423ec860"} device-1 | {"level":"info","message":"PATCH /devices/f6420f83-5efe-4379-b663-18b50ba657cc 200 191ms","method":"PATCH","requestID":"c939682e79300c12fbfd4155423ec860","responseTime":191,"status":200,"url":"/devices/f6420f83-5efe-4379-b663-18b50ba657cc"} gateway-1 | {"time_local":"24/Sep/2024:10:28:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f6420f83-5efe-4379-b663-18b50ba657cc HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.197","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c939682e79300c12fbfd4155423ec860"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a9c18fdfd4a9ed29bdf4b43c7b072ff9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwN30.6oX1CfxdSLSE72wnYcgrfKaGp_JK4BS5F2PH9d74Fc4","level":"info","message":"auth send jwt","requestID":"a9c18fdfd4a9ed29bdf4b43c7b072ff9"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"a9c18fdfd4a9ed29bdf4b43c7b072ff9","responseTime":29,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:27Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.051154,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a9c18fdfd4a9ed29bdf4b43c7b072ff9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173707,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwN30.6oX1CfxdSLSE72wnYcgrfKaGp_JK4BS5F2PH9d74Fc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a9c18fdfd4a9ed29bdf4b43c7b072ff9","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a9c18fdfd4a9ed29bdf4b43c7b072ff9"} gateway-1 | {"time_local":"24/Sep/2024:10:28:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f6420f83-5efe-4379-b663-18b50ba657cc/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.083","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a9c18fdfd4a9ed29bdf4b43c7b072ff9"} device-1 | {"level":"info","message":"POST /devices/f6420f83-5efe-4379-b663-18b50ba657cc/websocket 200 52ms","method":"POST","requestID":"a9c18fdfd4a9ed29bdf4b43c7b072ff9","responseTime":52,"status":200,"url":"/devices/f6420f83-5efe-4379-b663-18b50ba657cc/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8f24808a89d3f249fa732dd060603d72","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":"8f24808a89d3f249fa732dd060603d72","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:28:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/67088120-5b18-45a8-a98e-ac694546b7d8/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":"8f24808a89d3f249fa732dd060603d72"} device-1 | {"level":"info","message":"OPTIONS /devices/67088120-5b18-45a8-a98e-ac694546b7d8/websocket 200 1ms","method":"OPTIONS","requestID":"8f24808a89d3f249fa732dd060603d72","responseTime":1,"status":200,"url":"/devices/67088120-5b18-45a8-a98e-ac694546b7d8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk","level":"info","message":"auth send jwt","requestID":"16d3b09ce2976d0fd284e490f94affb4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"16d3b09ce2976d0fd284e490f94affb4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"16d3b09ce2976d0fd284e490f94affb4"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90022,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"16d3b09ce2976d0fd284e490f94affb4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173708,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"16d3b09ce2976d0fd284e490f94affb4","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"16d3b09ce2976d0fd284e490f94affb4"} device-1 | {"level":"info","message":"POST /devices/67088120-5b18-45a8-a98e-ac694546b7d8/websocket 200 86ms","method":"POST","requestID":"16d3b09ce2976d0fd284e490f94affb4","responseTime":86,"status":200,"url":"/devices/67088120-5b18-45a8-a98e-ac694546b7d8/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:28:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/67088120-5b18-45a8-a98e-ac694546b7d8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.084","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":"16d3b09ce2976d0fd284e490f94affb4"} device-1 | {"level":"info","message":"device 'http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8' connected"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"500aca07b9dac4da65abe02111b26ed6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk","level":"info","message":"auth send jwt","requestID":"500aca07b9dac4da65abe02111b26ed6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"500aca07b9dac4da65abe02111b26ed6","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":16.05704,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"500aca07b9dac4da65abe02111b26ed6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173708,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 21ms","method":"POST","requestID":"500aca07b9dac4da65abe02111b26ed6","responseTime":21,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.596069843Z"}]},"request_id":"abe9227c-b229-4caf-83a4-899071fbd473","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173708.4556286} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"500aca07b9dac4da65abe02111b26ed6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"500aca07b9dac4da65abe02111b26ed6"} gateway-1 | {"time_local":"24/Sep/2024:10:28:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/67088120-5b18-45a8-a98e-ac694546b7d8? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"500aca07b9dac4da65abe02111b26ed6"} device-1 | {"level":"info","message":"GET /devices/67088120-5b18-45a8-a98e-ac694546b7d8? 200 80ms","method":"GET","requestID":"500aca07b9dac4da65abe02111b26ed6","responseTime":80,"status":200,"url":"/devices/67088120-5b18-45a8-a98e-ac694546b7d8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk","level":"info","message":"auth send jwt","requestID":"77bea75369cdb52242b259a073d64283"} authentication-1 | {"level":"info","message":"GET /auth 200 42ms","method":"GET","requestID":"77bea75369cdb52242b259a073d64283","responseTime":42,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77bea75369cdb52242b259a073d64283"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90097,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"77bea75369cdb52242b259a073d64283","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173708,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"77bea75369cdb52242b259a073d64283","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.783359236Z"}]},"request_id":"bda8b60c-eecf-4e02-bcef-774dce982dce","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173708.5377872} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"77bea75369cdb52242b259a073d64283","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77bea75369cdb52242b259a073d64283"} device-1 | {"level":"info","message":"GET /devices/f6420f83-5efe-4379-b663-18b50ba657cc? 200 49ms","method":"GET","requestID":"77bea75369cdb52242b259a073d64283","responseTime":49,"status":200,"url":"/devices/f6420f83-5efe-4379-b663-18b50ba657cc?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f6420f83-5efe-4379-b663-18b50ba657cc? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.087","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"77bea75369cdb52242b259a073d64283"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk","level":"info","message":"auth send jwt","requestID":"912693c381cc86b39e8a8846d523d3a2"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"912693c381cc86b39e8a8846d523d3a2","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"912693c381cc86b39e8a8846d523d3a2"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.95241,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"912693c381cc86b39e8a8846d523d3a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173708,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"912693c381cc86b39e8a8846d523d3a2","responseTime":41,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Attempting to run experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Attempting to book experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Successfully booked experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd4014f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd408a20-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.143528,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bd4014f0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173708,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bd4014f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.022732,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bd408a20-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173708,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"bd408a20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":30,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.596069843Z"}]},"request_id":"27b1d49f-ec25-4336-8284-7230f02a9765","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173708.7806716} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd4014f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd4014f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/67088120-5b18-45a8-a98e-ac694546b7d8? 200 55ms","method":"GET","requestID":"bd4014f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":55,"status":200,"url":"/devices/67088120-5b18-45a8-a98e-ac694546b7d8?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.783359236Z"}]},"request_id":"1aeb15a7-685d-4564-bea5-2728bacd6337","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173708.7904084} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd408a20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd408a20-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Setting up experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} device-1 | {"level":"info","message":"GET /devices/f6420f83-5efe-4379-b663-18b50ba657cc? 200 95ms","method":"GET","requestID":"bd408a20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":95,"status":200,"url":"/devices/f6420f83-5efe-4379-b663-18b50ba657cc?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Successfully set up experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd66afc0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd6724f0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.978552,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bd66afc0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173708,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"bd66afc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd69bd00-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":25.196976,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bd6724f0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173708,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 39ms","method":"POST","requestID":"bd6724f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28: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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.596069843Z"}]},"request_id":"83334b97-1b3c-4422-b7c8-6be7695e7d97","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.0483983} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b9ad2e8-ddc5-483c-b098-0a0f8899d12c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.0497763} authorization-1 | {"level":"info","message":"POST /relations/query 200 13ms","method":"POST","requestID":"bd66afc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd66afc0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.297814,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:29Z"} device-1 | {"level":"info","message":"GET /devices/67088120-5b18-45a8-a98e-ac694546b7d8? 200 69ms","method":"GET","requestID":"bd66afc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":69,"status":200,"url":"/devices/67088120-5b18-45a8-a98e-ac694546b7d8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Successfully running experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bd69bd00-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","object_type":"device","rebac_allow":false,"scope_allow":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":"bd69bd00-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.783359236Z"}]},"request_id":"8e3270ee-113b-4a93-addc-dc7553c5caaa","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.0884619} authorization-1 | {"level":"info","message":"POST /relations/query 200 30ms","method":"POST","requestID":"bd6724f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":30,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd69bd00-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/67088120-5b18-45a8-a98e-ac694546b7d8/signaling 200 102ms","method":"POST","requestID":"bd69bd00-7a5f-11ef-8bac-49f2f0d74a99","responseTime":102,"status":200,"url":"/devices/67088120-5b18-45a8-a98e-ac694546b7d8/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd6724f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/f6420f83-5efe-4379-b663-18b50ba657cc? 200 124ms","method":"GET","requestID":"bd6724f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":124,"status":200,"url":"/devices/f6420f83-5efe-4379-b663-18b50ba657cc?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd7de140-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd7ef2b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcc9e5c08-9865-487e-97ab-9059b510b50b#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcc9e5c08-9865-487e-97ab-9059b510b50b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"0c21d928-ce17-41a7-9b9b-047e10f33768","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.1454217} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f318d08e-6016-442d-9fb9-212a76380e01","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.146872} authorization-1 | {"level":"info","message":"POST /relations/update 200 67ms","method":"POST","requestID":"912693c381cc86b39e8a8846d523d3a2","responseTime":67,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"22109704-b124-488e-8f49-fc805281a877","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.1649227} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.244377,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bd7de140-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 36ms","method":"POST","requestID":"bd7de140-7a5f-11ef-8bac-49f2f0d74a99","responseTime":36,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd7de140-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f6420f83-5efe-4379-b663-18b50ba657cc/signaling 200 62ms","method":"POST","requestID":"bd7de140-7a5f-11ef-8bac-49f2f0d74a99","responseTime":62,"status":200,"url":"/devices/f6420f83-5efe-4379-b663-18b50ba657cc/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bd7ef2b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 24ms","method":"POST","requestID":"bd7ef2b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":24,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.584598,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:29Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"912693c381cc86b39e8a8846d523d3a2"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8dd4bc51-91d1-446a-bcbc-304f1b0529c5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.2014885} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.646","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"912693c381cc86b39e8a8846d523d3a2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd7ef2b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/67088120-5b18-45a8-a98e-ac694546b7d8/signaling 200 100ms","method":"POST","requestID":"bd7ef2b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":100,"status":200,"url":"/devices/67088120-5b18-45a8-a98e-ac694546b7d8/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"91ee5daa1c13a517645b16404728a7b1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOX0.OhwayeEwJ9UsvpY9rRzQOB0qOM-YAaEr9dg8mfo7UY4","level":"info","message":"auth send jwt","requestID":"91ee5daa1c13a517645b16404728a7b1"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"91ee5daa1c13a517645b16404728a7b1","responseTime":9,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /experiments? 201 676ms","method":"POST","requestID":"912693c381cc86b39e8a8846d523d3a2","responseTime":676,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.955002,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"91ee5daa1c13a517645b16404728a7b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173709,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOX0.OhwayeEwJ9UsvpY9rRzQOB0qOM-YAaEr9dg8mfo7UY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"91ee5daa1c13a517645b16404728a7b1","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd9057d0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28: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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.596069843Z"}]},"request_id":"ab6f7777-8a8a-4cbc-83c7-63ae6cfd2b42","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.2710164} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8d1dd1c3-ea8f-4b4c-ad0a-e33b8479a1f3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.296371} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"91ee5daa1c13a517645b16404728a7b1"} gateway-1 | {"time_local":"24/Sep/2024:10:28:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/67088120-5b18-45a8-a98e-ac694546b7d8? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91ee5daa1c13a517645b16404728a7b1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOX0.OhwayeEwJ9UsvpY9rRzQOB0qOM-YAaEr9dg8mfo7UY4","level":"info","message":"auth send jwt","requestID":"42a14bfc6c21bde211778058faf751af"} device-1 | {"level":"info","message":"GET /devices/67088120-5b18-45a8-a98e-ac694546b7d8? 200 66ms","method":"GET","requestID":"91ee5daa1c13a517645b16404728a7b1","responseTime":66,"status":200,"url":"/devices/67088120-5b18-45a8-a98e-ac694546b7d8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"42a14bfc6c21bde211778058faf751af"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"42a14bfc6c21bde211778058faf751af","responseTime":8,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 48ms","method":"POST","requestID":"91ee5daa1c13a517645b16404728a7b1","responseTime":48,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":79.011507,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.910787,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bd9057d0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 94ms","method":"POST","requestID":"bd9057d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":94,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd9057d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f6420f83-5efe-4379-b663-18b50ba657cc/signaling 200 103ms","method":"POST","requestID":"bd9057d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":103,"status":200,"url":"/devices/f6420f83-5efe-4379-b663-18b50ba657cc/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Building connection plan","requestID":"912693c381cc86b39e8a8846d523d3a2"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"4689702d-29d3-4877-b2c7-ed6d3a33c2f2"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"d4ecb96d-3272-47e7-aac4-06ff204f499c"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"c0a45175-bd4d-4bf4-8f58-f3a366c1de46"}]},"level":"info","message":"Built pairwise service configurations","requestID":"912693c381cc86b39e8a8846d523d3a2"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"912693c381cc86b39e8a8846d523d3a2"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"42a14bfc6c21bde211778058faf751af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173709,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOX0.OhwayeEwJ9UsvpY9rRzQOB0qOM-YAaEr9dg8mfo7UY4"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"bda147c0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 26ms","method":"POST","requestID":"42a14bfc6c21bde211778058faf751af","responseTime":26,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.014797,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bda147c0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173708,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcwOH0.cUjwd1q_R4UDyUJdlRi57if_BkD4W8WZMApoOj5hSDk"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"bda147c0-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:24.783359236Z"}]},"request_id":"8f4d667f-bd3d-4477-a8fe-7fa1badf1ef1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.415148} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"42a14bfc6c21bde211778058faf751af","responseTime":10,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"42a14bfc6c21bde211778058faf751af"} gateway-1 | {"time_local":"24/Sep/2024:10:28:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f6420f83-5efe-4379-b663-18b50ba657cc? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.137","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"42a14bfc6c21bde211778058faf751af"} device-1 | {"level":"info","message":"GET /devices/f6420f83-5efe-4379-b663-18b50ba657cc? 200 132ms","method":"GET","requestID":"42a14bfc6c21bde211778058faf751af","responseTime":132,"status":200,"url":"/devices/f6420f83-5efe-4379-b663-18b50ba657cc?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"71096a7e-33c8-4def-8bff-8269cac8c34a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.4650886} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e1e423aa-8f56-45cd-938b-7eac994b0934","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.4667053} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"bda147c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":30,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"bda147c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"bda147c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce'","requestID":"bda147c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce'","requestID":"bda147c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"bda147c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 142ms","method":"POST","requestID":"bda147c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":142,"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":"bda147c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce","device":"67088120-5b18-45a8-a98e-ac694546b7d8","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} device-1 | {"device":"67088120-5b18-45a8-a98e-ac694546b7d8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"67088120-5b18-45a8-a98e-ac694546b7d8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"912693c381cc86b39e8a8846d523d3a2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bdcc9d80-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.138977,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4be8ad93-6e72-4ad7-b6a8-1e0773e99e30","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.6930096} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bdcc9d80-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","object_type":"device","rebac_allow":false,"scope_allow":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":"bdcc9d80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bdcc9d80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/67088120-5b18-45a8-a98e-ac694546b7d8/signaling 200 89ms","method":"POST","requestID":"bdcc9d80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":89,"status":200,"url":"/devices/67088120-5b18-45a8-a98e-ac694546b7d8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bddaa740-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.30069,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:29Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c164d429-e9e2-433e-badd-1e790976e189","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173709.7564495} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bddaa740-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","object_type":"device","rebac_allow":false,"scope_allow":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":"bddaa740-7a5f-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bddaa740-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f6420f83-5efe-4379-b663-18b50ba657cc/signaling 200 57ms","method":"POST","requestID":"bddaa740-7a5f-11ef-8bac-49f2f0d74a99","responseTime":57,"status":200,"url":"/devices/f6420f83-5efe-4379-b663-18b50ba657cc/signaling"} device-1 | {"device":"f6420f83-5efe-4379-b663-18b50ba657cc","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":"718c473f-431b-4c6a-8d8e-b7601bf307ce","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 5824955011907923178 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:Cz3J\r\na=ice-pwd:T4UCNfYlagF1dkQUAKeNskwd\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E6:A4:7E:A3:4D:96:65:B0:54:E9:4F:23:41:FC:A4:0E:D0:6E:59:90:8D:6A:05:FA:F5:97:48:D2:73:C7:55:0D\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"67088120-5b18-45a8-a98e-ac694546b7d8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e019a6d762cbbdfc0974479480f631d4","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":"e019a6d762cbbdfc0974479480f631d4","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"f6420f83-5efe-4379-b663-18b50ba657cc","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":"f6420f83-5efe-4379-b663-18b50ba657cc","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":"f6420f83-5efe-4379-b663-18b50ba657cc","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/718c473f-431b-4c6a-8d8e-b7601bf307ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"718c473f-431b-4c6a-8d8e-b7601bf307ce","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:4158649996 1 udp 2113937151 b4ed2c19-6b17-40b3-ae74-d69638d5a93c.local 51013 typ host generation 0 ufrag Cz3J network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"67088120-5b18-45a8-a98e-ac694546b7d8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} 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/67088120-5b18-45a8-a98e-ac694546b7d8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce"}}},"level":"info","message":"received a callback","requestID":"e019a6d762cbbdfc0974479480f631d4"} device-1 | {"device":"67088120-5b18-45a8-a98e-ac694546b7d8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"67088120-5b18-45a8-a98e-ac694546b7d8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"f6420f83-5efe-4379-b663-18b50ba657cc","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":"718c473f-431b-4c6a-8d8e-b7601bf307ce","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"67088120-5b18-45a8-a98e-ac694546b7d8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.027","http_referrer":"","http_user_agent":"node-fetch","requestID":"e019a6d762cbbdfc0974479480f631d4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 20ms","method":"POST","requestID":"e019a6d762cbbdfc0974479480f631d4","responseTime":20,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"f6420f83-5efe-4379-b663-18b50ba657cc","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":"718c473f-431b-4c6a-8d8e-b7601bf307ce","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/718c473f-431b-4c6a-8d8e-b7601bf307ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"718c473f-431b-4c6a-8d8e-b7601bf307ce","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"67088120-5b18-45a8-a98e-ac694546b7d8","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} 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/67088120-5b18-45a8-a98e-ac694546b7d8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce"}}},"level":"info","message":"received a callback","requestID":"35b2c66a65711a7790c82b2a1b9f7097"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"35b2c66a65711a7790c82b2a1b9f7097","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":"35b2c66a65711a7790c82b2a1b9f7097","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"bf03bdf0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.103238,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:31Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F718c473f-431b-4c6a-8d8e-b7601bf307ce","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"00b0d10b-3a2f-4698-85b2-96bbb7ae499a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173711.7299936} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bf03bdf0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce","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 38ms","method":"POST","requestID":"bf03bdf0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"bf03bdf0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce 200 45ms","method":"GET","requestID":"bf03bdf0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxMX0.Pb6N2dDQx64BsG0wITQsxm_2gHSR0F9kX76Z4_MDf1Q","level":"info","message":"auth send jwt","requestID":"268d2831575488539fda9af6fa240136"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"268d2831575488539fda9af6fa240136","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cc9e5c08-9865-487e-97ab-9059b510b50b","requestID":"268d2831575488539fda9af6fa240136"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.97074,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"268d2831575488539fda9af6fa240136","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173711,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxMX0.Pb6N2dDQx64BsG0wITQsxm_2gHSR0F9kX76Z4_MDf1Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"268d2831575488539fda9af6fa240136","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"35b2c66a65711a7790c82b2a1b9f7097","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"35b2c66a65711a7790c82b2a1b9f7097"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf14fc00-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cc9e5c08-9865-487e-97ab-9059b510b50b","requestID":"268d2831575488539fda9af6fa240136"} gateway-1 | {"time_local":"24/Sep/2024:10:28:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cc9e5c08-9865-487e-97ab-9059b510b50b HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.074","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"268d2831575488539fda9af6fa240136"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:31Z"} experiment-1 | {"level":"info","message":"GET /experiments/cc9e5c08-9865-487e-97ab-9059b510b50b 200 88ms","method":"GET","requestID":"268d2831575488539fda9af6fa240136","responseTime":88,"status":200,"url":"/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.40799,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:31Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"08eb3fa4-320d-4c41-ac21-54110ad408f0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173711.815315} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bf14fc00-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"bf14fc00-7a5f-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf14fc00-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/67088120-5b18-45a8-a98e-ac694546b7d8/signaling 200 61ms","method":"POST","requestID":"bf14fc00-7a5f-11ef-8bac-49f2f0d74a99","responseTime":61,"status":200,"url":"/devices/67088120-5b18-45a8-a98e-ac694546b7d8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf1e71e0-7a5f-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxMX0.Pb6N2dDQx64BsG0wITQsxm_2gHSR0F9kX76Z4_MDf1Q","level":"info","message":"auth send jwt","requestID":"880fcdde22c66a251f3e44bde8ab0fcf"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"880fcdde22c66a251f3e44bde8ab0fcf","responseTime":29,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cc9e5c08-9865-487e-97ab-9059b510b50b","requestID":"880fcdde22c66a251f3e44bde8ab0fcf"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:31Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d6cd0aa6-9772-4247-bc1c-2f2ce44ac90d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173711.904204} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.549528,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bf1e71e0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"bf1e71e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.950172,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"880fcdde22c66a251f3e44bde8ab0fcf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173711,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxMX0.Pb6N2dDQx64BsG0wITQsxm_2gHSR0F9kX76Z4_MDf1Q"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf1e71e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f6420f83-5efe-4379-b663-18b50ba657cc/signaling 200 50ms","method":"POST","requestID":"bf1e71e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/devices/f6420f83-5efe-4379-b663-18b50ba657cc/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"880fcdde22c66a251f3e44bde8ab0fcf","responseTime":31,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Attempting to finish experiment","requestID":"880fcdde22c66a251f3e44bde8ab0fcf"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"bf2d17e0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:31Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.953613,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bf2d17e0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173711,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxMX0.Pb6N2dDQx64BsG0wITQsxm_2gHSR0F9kX76Z4_MDf1Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"bf2d17e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"device":"f6420f83-5efe-4379-b663-18b50ba657cc","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":"f6420f83-5efe-4379-b663-18b50ba657cc","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":"f6420f83-5efe-4379-b663-18b50ba657cc","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 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce","device":"67088120-5b18-45a8-a98e-ac694546b7d8","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/718c473f-431b-4c6a-8d8e-b7601bf307ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"718c473f-431b-4c6a-8d8e-b7601bf307ce","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1f27d8f5041b8bbeebb8bb5bdd74cecf","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":"1f27d8f5041b8bbeebb8bb5bdd74cecf","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dd10494221189004b651b646ffd056fc","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":"dd10494221189004b651b646ffd056fc","responseTime":2,"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":"connected","url":"http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce"}}},"level":"info","message":"received a callback","requestID":"1f27d8f5041b8bbeebb8bb5bdd74cecf"} 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/67088120-5b18-45a8-a98e-ac694546b7d8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce"}}},"level":"info","message":"received a callback","requestID":"dd10494221189004b651b646ffd056fc"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F718c473f-431b-4c6a-8d8e-b7601bf307ce': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F718c473f-431b-4c6a-8d8e-b7601bf307ce","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"4a998df5-71f0-4064-9f8b-8ecb0fa2b80c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.0484688} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b322e4a5-eb3b-495c-ba46-78d98cddcab7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.0500393} authorization-1 | {"level":"info","message":"POST /relations/update 200 96ms","method":"POST","requestID":"bf2d17e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":96,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"718c473f-431b-4c6a-8d8e-b7601bf307ce","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"bf2d17e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce 204 178ms","method":"DELETE","requestID":"bf2d17e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":178,"status":204,"url":"/peerconnections/718c473f-431b-4c6a-8d8e-b7601bf307ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"},"level":"info","message":"Successfully finished experiment","requestID":"880fcdde22c66a251f3e44bde8ab0fcf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf525320-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.620474,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:32Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67088120-5b18-45a8-a98e-ac694546b7d8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b6c0eaf-ff39-4c39-923e-513d4d1d6024","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.2175019} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bf525320-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8","object_type":"device","rebac_allow":false,"scope_allow":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":"bf525320-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf525320-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/67088120-5b18-45a8-a98e-ac694546b7d8/signaling 200 20ms","method":"POST","requestID":"bf525320-7a5f-11ef-8bac-49f2f0d74a99","responseTime":20,"status":200,"url":"/devices/67088120-5b18-45a8-a98e-ac694546b7d8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bf55d590-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.530874,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:32Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff6420f83-5efe-4379-b663-18b50ba657cc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c90872e-2295-4225-9f40-371356b113ae","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.2641425} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bf55d590-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"bf55d590-7a5f-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcc9e5c08-9865-487e-97ab-9059b510b50b': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcc9e5c08-9865-487e-97ab-9059b510b50b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"47229af4-4efb-4df3-806d-a962a1216e16","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.272174} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a82025e5-73be-4f1d-b832-12e47373e6d0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.273039} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bf55d590-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f6420f83-5efe-4379-b663-18b50ba657cc/signaling 200 49ms","method":"POST","requestID":"bf55d590-7a5f-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/devices/f6420f83-5efe-4379-b663-18b50ba657cc/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 77ms","method":"POST","requestID":"880fcdde22c66a251f3e44bde8ab0fcf","responseTime":77,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cc9e5c08-9865-487e-97ab-9059b510b50b","requestID":"880fcdde22c66a251f3e44bde8ab0fcf"} experiment-1 | {"level":"info","message":"DELETE /experiments/cc9e5c08-9865-487e-97ab-9059b510b50b 204 524ms","method":"DELETE","requestID":"880fcdde22c66a251f3e44bde8ab0fcf","responseTime":524,"status":204,"url":"/experiments/cc9e5c08-9865-487e-97ab-9059b510b50b"} gateway-1 | {"time_local":"24/Sep/2024:10:28:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cc9e5c08-9865-487e-97ab-9059b510b50b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.579","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"880fcdde22c66a251f3e44bde8ab0fcf"} gateway-1 | {"time_local":"24/Sep/2024:10:28:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2263","request_time":"4.885","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5cba9656a81da6f0cde68dfc765b9400"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxMn0.6KWY7ksJZIgeEh-ea_eu1PexaIxt-1SFmepSFbf9XT0","level":"info","message":"auth send jwt","requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 369ms","method":"POST","requestID":"1f27d8f5041b8bbeebb8bb5bdd74cecf","responseTime":369,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.380","http_referrer":"","http_user_agent":"node-fetch","requestID":"1f27d8f5041b8bbeebb8bb5bdd74cecf"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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":"4.082","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":"e23635fd1369dc61ebb187679a449397"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:32Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 408ms","method":"POST","requestID":"dd10494221189004b651b646ffd056fc","responseTime":408,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.871336,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173712,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxMn0.6KWY7ksJZIgeEh-ea_eu1PexaIxt-1SFmepSFbf9XT0"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1","responseTime":37,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.424","http_referrer":"","http_user_agent":"node-fetch","requestID":"dd10494221189004b651b646ffd056fc"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"43660089-12da-4766-be87-621480ad8bdf","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.5143251} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/67088120-5b18-45a8-a98e-ac694546b7d8' closed"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f6420f83-5efe-4379-b663-18b50ba657cc' 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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"602dc369-548d-4742-82d8-e4f1e756808e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.5329635} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"773353ed-6d5a-42b1-9199-795ffe16aa16","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.5762014} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"217fbef2-e866-4c33-99c4-96c00d9f786d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.577563} authorization-1 | {"level":"info","message":"POST /relations/update 200 56ms","method":"POST","requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1","responseTime":56,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.576169420Z"}]},"request_id":"d96d80df-f689-4072-90d9-6d448a8cc3b7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.5936253} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1"} gateway-1 | {"time_local":"24/Sep/2024:10:28:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.191","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1"} device-1 | {"level":"info","message":"POST /devices? 201 181ms","method":"POST","requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1","responseTime":181,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"d7ee96ec0b9e92cb6dc15259ba21cbc1","responseTime":7,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxMn0.6KWY7ksJZIgeEh-ea_eu1PexaIxt-1SFmepSFbf9XT0","level":"info","message":"auth send jwt","requestID":"5cea57ae8f392682ed50df6ca54f4b54"} device-1 | {"level":"info","message":"postDevices called","requestID":"5cea57ae8f392682ed50df6ca54f4b54"} authentication-1 | {"level":"info","message":"GET /auth 200 32ms","method":"GET","requestID":"5cea57ae8f392682ed50df6ca54f4b54","responseTime":32,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:32Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":3.601013,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5cea57ae8f392682ed50df6ca54f4b54","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173712,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxMn0.6KWY7ksJZIgeEh-ea_eu1PexaIxt-1SFmepSFbf9XT0"} authorization-1 | {"level":"info","message":"POST /authorize 200 20ms","method":"POST","requestID":"5cea57ae8f392682ed50df6ca54f4b54","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"90ea256c-6349-4dbe-8fef-dd4fe10f3f81","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.7612855} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5cea57ae8f392682ed50df6ca54f4b54","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae22771c-f8dc-4a7d-8377-3b22a3291614","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.770577} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"5cea57ae8f392682ed50df6ca54f4b54","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"3ff75f73-e73a-4e20-9531-081fce2a99bc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.8189752} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6288124-c115-4038-8846-1a94ad93e617","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.8197448} authorization-1 | {"level":"info","message":"POST /relations/update 200 45ms","method":"POST","requestID":"5cea57ae8f392682ed50df6ca54f4b54","responseTime":45,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.818957803Z"}]},"request_id":"b08a78a5-0ad2-40c7-8d5d-f37aa7081702","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173712.830495} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5cea57ae8f392682ed50df6ca54f4b54","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5cea57ae8f392682ed50df6ca54f4b54"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.232","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5cea57ae8f392682ed50df6ca54f4b54"} device-1 | {"level":"info","message":"POST /devices? 201 201ms","method":"POST","requestID":"5cea57ae8f392682ed50df6ca54f4b54","responseTime":201,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNH0.RVDof_q0JY5Y0uhQ3fn7BGGPUSz5d6pSBRtMgQmjs5Y","level":"info","message":"auth send jwt","requestID":"f8eabab3d7c2654caa3ac31431b695ef"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"f8eabab3d7c2654caa3ac31431b695ef","responseTime":28,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f8eabab3d7c2654caa3ac31431b695ef"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.074848,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f8eabab3d7c2654caa3ac31431b695ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173714,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNH0.RVDof_q0JY5Y0uhQ3fn7BGGPUSz5d6pSBRtMgQmjs5Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f8eabab3d7c2654caa3ac31431b695ef","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.576169420Z"}]},"request_id":"e818e9c8-11cd-4d5b-a4b9-e00aea2785f8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173714.664423} authorization-1 | {"level":"info","message":"POST /relations/query 200 33ms","method":"POST","requestID":"f8eabab3d7c2654caa3ac31431b695ef","responseTime":33,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4c940125-76d4-40c5-a262-676f8026fe89","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173714.6735892} authorization-1 | {"level":"info","message":"POST /relations/update 200 43ms","method":"POST","requestID":"f8eabab3d7c2654caa3ac31431b695ef","responseTime":43,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.576169420Z"}]},"request_id":"63bf9ce8-fe74-4ebe-a5ae-7040c2144a1a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173714.7168906} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f8eabab3d7c2654caa3ac31431b695ef","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f8eabab3d7c2654caa3ac31431b695ef"} device-1 | {"level":"info","message":"PATCH /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef 200 102ms","method":"PATCH","requestID":"f8eabab3d7c2654caa3ac31431b695ef","responseTime":102,"status":200,"url":"/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef"} gateway-1 | {"time_local":"24/Sep/2024:10:28:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.135","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f8eabab3d7c2654caa3ac31431b695ef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNH0.RVDof_q0JY5Y0uhQ3fn7BGGPUSz5d6pSBRtMgQmjs5Y","level":"info","message":"auth send jwt","requestID":"c7f113f6dd72bd439e4597b89ee476bf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c7f113f6dd72bd439e4597b89ee476bf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c7f113f6dd72bd439e4597b89ee476bf"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:34Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.912414,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c7f113f6dd72bd439e4597b89ee476bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173714,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNH0.RVDof_q0JY5Y0uhQ3fn7BGGPUSz5d6pSBRtMgQmjs5Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 39ms","method":"POST","requestID":"c7f113f6dd72bd439e4597b89ee476bf","responseTime":39,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c7f113f6dd72bd439e4597b89ee476bf"} device-1 | {"level":"info","message":"POST /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/websocket 200 120ms","method":"POST","requestID":"c7f113f6dd72bd439e4597b89ee476bf","responseTime":120,"status":200,"url":"/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:28:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.099","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c7f113f6dd72bd439e4597b89ee476bf"} device-1 | {"level":"info","message":"device 'http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef' connected"} gateway-1 | {"time_local":"24/Sep/2024:10:28:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4b75fea3-e361-4571-956d-1439d3313505/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":"cdb51f5d984f399d7f9c0d8d827bc385"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cdb51f5d984f399d7f9c0d8d827bc385","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 4ms","method":"GET","requestID":"cdb51f5d984f399d7f9c0d8d827bc385","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/4b75fea3-e361-4571-956d-1439d3313505/websocket 200 3ms","method":"OPTIONS","requestID":"cdb51f5d984f399d7f9c0d8d827bc385","responseTime":3,"status":200,"url":"/devices/4b75fea3-e361-4571-956d-1439d3313505/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg","level":"info","message":"auth send jwt","requestID":"27b772015e767e304e569ec214d5628c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"27b772015e767e304e569ec214d5628c"} authentication-1 | {"level":"info","message":"GET /auth 200 35ms","method":"GET","requestID":"27b772015e767e304e569ec214d5628c","responseTime":35,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.077384,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"27b772015e767e304e569ec214d5628c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173716,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"27b772015e767e304e569ec214d5628c","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"27b772015e767e304e569ec214d5628c"} device-1 | {"level":"info","message":"POST /devices/4b75fea3-e361-4571-956d-1439d3313505/websocket 200 98ms","method":"POST","requestID":"27b772015e767e304e569ec214d5628c","responseTime":98,"status":200,"url":"/devices/4b75fea3-e361-4571-956d-1439d3313505/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:28:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4b75fea3-e361-4571-956d-1439d3313505/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.130","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":"27b772015e767e304e569ec214d5628c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg","level":"info","message":"auth send jwt","requestID":"5357264872676050df30aa3ab8873e00"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5357264872676050df30aa3ab8873e00","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505' connected"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5357264872676050df30aa3ab8873e00"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.007672,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5357264872676050df30aa3ab8873e00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173716,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"5357264872676050df30aa3ab8873e00","responseTime":32,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.576169420Z"}]},"request_id":"9a7f8e22-6365-4425-ae7b-f47b55c7210f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173716.3112452} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"5357264872676050df30aa3ab8873e00","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5357264872676050df30aa3ab8873e00"} gateway-1 | {"time_local":"24/Sep/2024:10:28:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.088","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5357264872676050df30aa3ab8873e00"} device-1 | {"level":"info","message":"GET /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef? 200 81ms","method":"GET","requestID":"5357264872676050df30aa3ab8873e00","responseTime":81,"status":200,"url":"/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg","level":"info","message":"auth send jwt","requestID":"e59ee756fdffa5e4f46bbc5eb640af3c"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"e59ee756fdffa5e4f46bbc5eb640af3c","responseTime":9,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e59ee756fdffa5e4f46bbc5eb640af3c"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.965707,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e59ee756fdffa5e4f46bbc5eb640af3c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173716,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"e59ee756fdffa5e4f46bbc5eb640af3c","responseTime":14,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.818957803Z"}]},"request_id":"ff0e7a9d-22f0-4ada-9e08-e5786ef75088","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173716.4404545} authorization-1 | {"level":"info","message":"POST /relations/query 200 41ms","method":"POST","requestID":"e59ee756fdffa5e4f46bbc5eb640af3c","responseTime":41,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e59ee756fdffa5e4f46bbc5eb640af3c"} gateway-1 | {"time_local":"24/Sep/2024:10:28:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4b75fea3-e361-4571-956d-1439d3313505? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.098","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e59ee756fdffa5e4f46bbc5eb640af3c"} device-1 | {"level":"info","message":"GET /devices/4b75fea3-e361-4571-956d-1439d3313505? 200 91ms","method":"GET","requestID":"e59ee756fdffa5e4f46bbc5eb640af3c","responseTime":91,"status":200,"url":"/devices/4b75fea3-e361-4571-956d-1439d3313505?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg","level":"info","message":"auth send jwt","requestID":"ebbdec03d41c363a7c674fb73c07e869"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ebbdec03d41c363a7c674fb73c07e869","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ebbdec03d41c363a7c674fb73c07e869"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.896446,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ebbdec03d41c363a7c674fb73c07e869","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173716,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 44ms","method":"POST","requestID":"ebbdec03d41c363a7c674fb73c07e869","responseTime":44,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Attempting to run experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Attempting to book experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Successfully booked experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1f119e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1f53890-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.982096,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.870155,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c1f119e0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173716,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 17ms","method":"POST","requestID":"c1f119e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c1f53890-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173716,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 44ms","method":"POST","requestID":"c1f53890-7a5f-11ef-8bac-49f2f0d74a99","responseTime":44,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.818957803Z"}]},"request_id":"5ac7f608-75cb-4781-a6cb-ef0a257ccae4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173716.6885853} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.576169420Z"}]},"request_id":"ccae2e52-3ee0-4525-b709-f74a38efea27","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173716.6888115} authorization-1 | {"level":"info","message":"POST /relations/query 200 16ms","method":"POST","requestID":"c1f119e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 46ms","method":"POST","requestID":"c1f53890-7a5f-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1f119e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef? 200 126ms","method":"GET","requestID":"c1f119e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":126,"status":200,"url":"/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1f53890-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4b75fea3-e361-4571-956d-1439d3313505? 200 101ms","method":"GET","requestID":"c1f53890-7a5f-11ef-8bac-49f2f0d74a99","responseTime":101,"status":200,"url":"/devices/4b75fea3-e361-4571-956d-1439d3313505?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Setting up experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Successfully set up experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c2232660-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c2239b90-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.67361,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c2232660-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173716,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"c2232660-7a5f-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":25.837858,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c2239b90-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173716,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"c2239b90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":32,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.576169420Z"}]},"request_id":"2da560d8-b82c-4faa-ab82-cbc13bbc25b1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173716.9803326} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"c2232660-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.818957803Z"}]},"request_id":"bca59a22-0283-44a9-ac0d-cb90d62861d2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173716.9883614} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c22fa980-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/query 200 34ms","method":"POST","requestID":"c2239b90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c2232660-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef? 200 87ms","method":"GET","requestID":"c2232660-7a5f-11ef-8bac-49f2f0d74a99","responseTime":87,"status":200,"url":"/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef?"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.348215,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19104299-e4f0-42c2-8c2c-9fb9b6b1dcf7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.0273795} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c22fa980-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","object_type":"device","rebac_allow":false,"scope_allow":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":"c22fa980-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Successfully running experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c2239b90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4b75fea3-e361-4571-956d-1439d3313505? 200 101ms","method":"GET","requestID":"c2239b90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":101,"status":200,"url":"/devices/4b75fea3-e361-4571-956d-1439d3313505?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c238aa30-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:37Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c22fa980-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/signaling 200 96ms","method":"POST","requestID":"c22fa980-7a5f-11ef-8bac-49f2f0d74a99","responseTime":96,"status":200,"url":"/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c23f60f0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"653a4ceb-4f37-4069-ad81-40c4d43b21d9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.117123} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":34.489463,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c238aa30-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 91ms","method":"POST","requestID":"c238aa30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":91,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc0e6b1d2-c1bb-46bc-a58f-270e64ffeeca#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"0f71874c-9a3e-4196-b3c0-fbbd7bed666b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.1286206} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"185bc511-ce35-490a-abd4-eaf39a050798","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.1293309} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c238aa30-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/signaling 200 97ms","method":"POST","requestID":"c238aa30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":97,"status":200,"url":"/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c247c560-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/update 200 109ms","method":"POST","requestID":"ebbdec03d41c363a7c674fb73c07e869","responseTime":109,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9cba1df3-41df-4f03-a608-70e1c00bc108","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.1819146} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":28.999527,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c23f60f0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","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":"24/Sep/2024:10:28:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.761","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ebbdec03d41c363a7c674fb73c07e869"} authorization-1 | {"level":"info","message":"POST /authorize 200 47ms","method":"POST","requestID":"c23f60f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxN30.cTnGs_hjVx7amO2Ls3mbLnWCJRPn27diIkn7wCV2NoI","level":"info","message":"auth send jwt","requestID":"00b1bf1c6df1e46d8e9ff72cd7a73832"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"00b1bf1c6df1e46d8e9ff72cd7a73832","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00b1bf1c6df1e46d8e9ff72cd7a73832"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc64108f-9f92-4114-ae5d-0890b981cb1c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.2592072} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c23f60f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b75fea3-e361-4571-956d-1439d3313505/signaling 200 141ms","method":"POST","requestID":"c23f60f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":141,"status":200,"url":"/devices/4b75fea3-e361-4571-956d-1439d3313505/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":34.607617,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":50.578169,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"00b1bf1c6df1e46d8e9ff72cd7a73832","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173717,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxN30.cTnGs_hjVx7amO2Ls3mbLnWCJRPn27diIkn7wCV2NoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 40ms","method":"POST","requestID":"00b1bf1c6df1e46d8e9ff72cd7a73832","responseTime":40,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 771ms","method":"POST","requestID":"ebbdec03d41c363a7c674fb73c07e869","responseTime":771,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c247c560-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","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":"c247c560-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b75fea3-e361-4571-956d-1439d3313505/signaling 200 102ms","method":"POST","requestID":"c247c560-7a5f-11ef-8bac-49f2f0d74a99","responseTime":102,"status":200,"url":"/devices/4b75fea3-e361-4571-956d-1439d3313505/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 67ms","method":"POST","requestID":"c247c560-7a5f-11ef-8bac-49f2f0d74a99","responseTime":67,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.576169420Z"}]},"request_id":"f3fe7bcc-b575-4cb6-9b53-2c34337fb1ed","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.3051383} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00b1bf1c6df1e46d8e9ff72cd7a73832"} gateway-1 | {"time_local":"24/Sep/2024:10:28:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.097","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"00b1bf1c6df1e46d8e9ff72cd7a73832"} device-1 | {"level":"info","message":"GET /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef? 200 88ms","method":"GET","requestID":"00b1bf1c6df1e46d8e9ff72cd7a73832","responseTime":88,"status":200,"url":"/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 36ms","method":"POST","requestID":"00b1bf1c6df1e46d8e9ff72cd7a73832","responseTime":36,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Building connection plan","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"f3d40457-35c8-45cb-b090-e92f194f4923"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"28c4294b-1912-414d-bed4-d916f391e253"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"384ee24d-8a9d-45b5-bb5b-4008249c2faf"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ebbdec03d41c363a7c674fb73c07e869"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"ebbdec03d41c363a7c674fb73c07e869"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c25ef6e0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.899349,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c25ef6e0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173716,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxNn0.ZtnCRd4Y5zC5sTPyMqrI4u_gw6U1jfeRCBC5cGb-bdg"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxN30.cTnGs_hjVx7amO2Ls3mbLnWCJRPn27diIkn7wCV2NoI","level":"info","message":"auth send jwt","requestID":"938f0c936170be3cc3b96cbb2c879600"} authentication-1 | {"level":"info","message":"GET /auth 200 47ms","method":"GET","requestID":"938f0c936170be3cc3b96cbb2c879600","responseTime":47,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"938f0c936170be3cc3b96cbb2c879600"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"c25ef6e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932328,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"938f0c936170be3cc3b96cbb2c879600","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173717,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxN30.cTnGs_hjVx7amO2Ls3mbLnWCJRPn27diIkn7wCV2NoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"938f0c936170be3cc3b96cbb2c879600","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:32.818957803Z"}]},"request_id":"f47a9355-5bca-4a35-a12d-d7b86315ddc1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.4140995} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"938f0c936170be3cc3b96cbb2c879600","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"938f0c936170be3cc3b96cbb2c879600"} device-1 | {"level":"info","message":"GET /devices/4b75fea3-e361-4571-956d-1439d3313505? 200 50ms","method":"GET","requestID":"938f0c936170be3cc3b96cbb2c879600","responseTime":50,"status":200,"url":"/devices/4b75fea3-e361-4571-956d-1439d3313505?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4b75fea3-e361-4571-956d-1439d3313505? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.102","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"938f0c936170be3cc3b96cbb2c879600"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"9f2e716a-f54d-4ad9-b218-f9ecc21be5c4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.42166} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc286d9f-5232-4cbb-b4f0-6e5c16080192","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.4228997} authorization-1 | {"level":"info","message":"POST /relations/update 200 49ms","method":"POST","requestID":"c25ef6e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c25ef6e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c25ef6e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994'","requestID":"c25ef6e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994'","requestID":"c25ef6e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c25ef6e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 143ms","method":"POST","requestID":"c25ef6e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":143,"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":"c25ef6e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994","device":"4b75fea3-e361-4571-956d-1439d3313505","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 | {"device":"4b75fea3-e361-4571-956d-1439d3313505","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"4b75fea3-e361-4571-956d-1439d3313505","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ebbdec03d41c363a7c674fb73c07e869"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c28b8520-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9ff2ce13-8ac1-42be-a4ae-e4a8c8b92b1b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.6246996} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.16417,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c28b8520-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","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":"c28b8520-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/signaling 200 14ms","method":"POST","requestID":"c28b8520-7a5f-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c28e4440-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"c28b8520-7a5f-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"957600e4-d38d-42d7-a4bf-51f273ec3c07","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173717.6427996} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.905329,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c28e4440-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","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":"c28e4440-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b75fea3-e361-4571-956d-1439d3313505/signaling 200 44ms","method":"POST","requestID":"c28e4440-7a5f-11ef-8bac-49f2f0d74a99","responseTime":44,"status":200,"url":"/devices/4b75fea3-e361-4571-956d-1439d3313505/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 42ms","method":"POST","requestID":"c28e4440-7a5f-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/authorize"} device-1 | {"device":"00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","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":"380b83c9-8ad2-48fe-a97f-b9c15bfd2994","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 5728370724090217243 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:6BHD\r\na=ice-pwd:mm9OxpLch8x/eUMNNTzFyCLj\r\na=ice-options:trickle\r\na=fingerprint:sha-256 85:0A:BC:CB:6B:07:5A:33:D5:D8:E0:84:2B:DC:C7:E7:12:E8:EB:CA:24:05:7F:32:BD:B7:3C:ED:F3:D0:EA:3E\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"4b75fea3-e361-4571-956d-1439d3313505","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3654168215 1 udp 2113937151 b9fcc16f-7168-4706-8681-28e95cc46905.local 54429 typ host generation 0 ufrag 6BHD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4b75fea3-e361-4571-956d-1439d3313505","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"4b75fea3-e361-4571-956d-1439d3313505","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/380b83c9-8ad2-48fe-a97f-b9c15bfd2994' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"380b83c9-8ad2-48fe-a97f-b9c15bfd2994","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4b75fea3-e361-4571-956d-1439d3313505","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d99492119937692e789578d0fd9def3a","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":"d99492119937692e789578d0fd9def3a","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/4b75fea3-e361-4571-956d-1439d3313505"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994"}}},"level":"info","message":"received a callback","requestID":"d99492119937692e789578d0fd9def3a"} device-1 | {"device":"00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","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"}} gateway-1 | {"time_local":"24/Sep/2024:10:28:39 +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":"d99492119937692e789578d0fd9def3a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"d99492119937692e789578d0fd9def3a","responseTime":33,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","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":"00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","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":{"peerconnection":"380b83c9-8ad2-48fe-a97f-b9c15bfd2994","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","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":"4b75fea3-e361-4571-956d-1439d3313505","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","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":"380b83c9-8ad2-48fe-a97f-b9c15bfd2994","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4b75fea3-e361-4571-956d-1439d3313505","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/380b83c9-8ad2-48fe-a97f-b9c15bfd2994' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"380b83c9-8ad2-48fe-a97f-b9c15bfd2994","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"382f9a274bc3b16851918f130f9bd2b8","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":"382f9a274bc3b16851918f130f9bd2b8","responseTime":3,"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/4b75fea3-e361-4571-956d-1439d3313505"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994"}}},"level":"info","message":"received a callback","requestID":"382f9a274bc3b16851918f130f9bd2b8"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c3d431c0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:39Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxOX0.nwMY-_ur7KCGzIGhKxm93cEoAJDzR3FcjLeu732DB8A","level":"info","message":"auth send jwt","requestID":"256cfb278be8f542046b35417db3e458"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":28.070463,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:39Z"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"256cfb278be8f542046b35417db3e458","responseTime":7,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F380b83c9-8ad2-48fe-a97f-b9c15bfd2994","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b1a36c4-01a5-4327-ae9c-1c8b278a937b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173719.8018694} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c3d431c0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994","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 37ms","method":"POST","requestID":"c3d431c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c3d431c0-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","requestID":"256cfb278be8f542046b35417db3e458"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:39Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.682557,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"256cfb278be8f542046b35417db3e458","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173719,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcxOX0.nwMY-_ur7KCGzIGhKxm93cEoAJDzR3FcjLeu732DB8A"} authorization-1 | {"level":"info","message":"POST /authorize 200 47ms","method":"POST","requestID":"256cfb278be8f542046b35417db3e458","responseTime":47,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994 200 92ms","method":"GET","requestID":"c3d431c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":92,"status":200,"url":"/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","requestID":"256cfb278be8f542046b35417db3e458"} gateway-1 | {"time_local":"24/Sep/2024:10:28:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca HTTP/1.1","status": "200","body_bytes_sent":"882","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"256cfb278be8f542046b35417db3e458"} experiment-1 | {"level":"info","message":"GET /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca 200 153ms","method":"GET","requestID":"256cfb278be8f542046b35417db3e458","responseTime":153,"status":200,"url":"/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 262ms","method":"POST","requestID":"382f9a274bc3b16851918f130f9bd2b8","responseTime":262,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c3f9bb20-7a5f-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.272","http_referrer":"","http_user_agent":"node-fetch","requestID":"382f9a274bc3b16851918f130f9bd2b8"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":9.057252,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7952741-f6c2-45e9-9fd0-0d4954ed9ed4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.030131} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c3f9bb20-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","object_type":"device","rebac_allow":false,"scope_allow":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":"c3f9bb20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c3f9bb20-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b75fea3-e361-4571-956d-1439d3313505/signaling 200 47ms","method":"POST","requestID":"c3f9bb20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/devices/4b75fea3-e361-4571-956d-1439d3313505/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMH0.H9sCXXk4FyRafefe7E9QsGFOwO1Ws9HDwF1pJjFZkT8","level":"info","message":"auth send jwt","requestID":"41c6694133eda38bb6d9337e98d6d6f9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"41c6694133eda38bb6d9337e98d6d6f9","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c40246a0-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","requestID":"41c6694133eda38bb6d9337e98d6d6f9"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":25.186323,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":28.462877,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99b230bb-a1e1-4abd-86ae-b3f89b449f08","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.1140413} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c40246a0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 51ms","method":"POST","requestID":"c40246a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"41c6694133eda38bb6d9337e98d6d6f9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173720,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMH0.H9sCXXk4FyRafefe7E9QsGFOwO1Ws9HDwF1pJjFZkT8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c40246a0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/signaling 200 60ms","method":"POST","requestID":"c40246a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":60,"status":200,"url":"/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 79ms","method":"POST","requestID":"41c6694133eda38bb6d9337e98d6d6f9","responseTime":79,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","requestID":"41c6694133eda38bb6d9337e98d6d6f9"} gateway-1 | {"time_local":"24/Sep/2024:10:28:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.124","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"41c6694133eda38bb6d9337e98d6d6f9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMH0.H9sCXXk4FyRafefe7E9QsGFOwO1Ws9HDwF1pJjFZkT8","level":"info","message":"auth send jwt","requestID":"d063437178f699bca8464049fd5752d7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d063437178f699bca8464049fd5752d7","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"GET /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca 200 145ms","method":"GET","requestID":"41c6694133eda38bb6d9337e98d6d6f9","responseTime":145,"status":200,"url":"/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","requestID":"d063437178f699bca8464049fd5752d7"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.869581,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d063437178f699bca8464049fd5752d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173720,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMH0.H9sCXXk4FyRafefe7E9QsGFOwO1Ws9HDwF1pJjFZkT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d063437178f699bca8464049fd5752d7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Attempting to finish experiment","requestID":"d063437178f699bca8464049fd5752d7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c4292f90-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.981091,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c4292f90-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173720,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMH0.H9sCXXk4FyRafefe7E9QsGFOwO1Ws9HDwF1pJjFZkT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 40ms","method":"POST","requestID":"c4292f90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/authorize"} device-1 | {"device":"00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","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":"00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","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":"00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","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 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994","device":"4b75fea3-e361-4571-956d-1439d3313505","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F380b83c9-8ad2-48fe-a97f-b9c15bfd2994': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F380b83c9-8ad2-48fe-a97f-b9c15bfd2994","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"0448cd47-aac6-4dea-a8ca-85f259b8edef","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.4288907} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a6c53bc-5d36-4f86-9415-6b030666c95e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.4295106} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994' to 'http://localhost/callbacks/experiment'"} authorization-1 | {"level":"info","message":"POST /relations/update 200 56ms","method":"POST","requestID":"c4292f90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"380b83c9-8ad2-48fe-a97f-b9c15bfd2994","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6505b3f99dd99a5fdaeafa4740a7dad4","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":"6505b3f99dd99a5fdaeafa4740a7dad4","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/4b75fea3-e361-4571-956d-1439d3313505"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994"}}},"level":"info","message":"received a callback","requestID":"6505b3f99dd99a5fdaeafa4740a7dad4"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5eaff640aaefc252d922a53bbd9c42b6","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":"5eaff640aaefc252d922a53bbd9c42b6","responseTime":2,"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":"connected","url":"http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994"}}},"level":"info","message":"received a callback","requestID":"5eaff640aaefc252d922a53bbd9c42b6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c4292f90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994 204 156ms","method":"DELETE","requestID":"c4292f90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":156,"status":204,"url":"/peerconnections/380b83c9-8ad2-48fe-a97f-b9c15bfd2994"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"},"level":"info","message":"Successfully finished experiment","requestID":"d063437178f699bca8464049fd5752d7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c446a2a0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b75fea3-e361-4571-956d-1439d3313505","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"408f42ed-0013-4f87-8c62-4680a16cee56","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.5597951} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.091838,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c446a2a0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505","object_type":"device","rebac_allow":false,"scope_allow":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":"c446a2a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c446a2a0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b75fea3-e361-4571-956d-1439d3313505/signaling 200 46ms","method":"POST","requestID":"c446a2a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/devices/4b75fea3-e361-4571-956d-1439d3313505/signaling"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc0e6b1d2-c1bb-46bc-a58f-270e64ffeeca': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"0884135d-5c12-40b7-90ea-6e35ba0a92b8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.573347} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0430f4c7-ed2d-40f5-a3fc-24a0c91bcedd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.574737} authorization-1 | {"level":"info","message":"POST /relations/update 200 62ms","method":"POST","requestID":"d063437178f699bca8464049fd5752d7","responseTime":62,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c453c200-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ffe164f-20eb-43bc-8d71-dfed32e07683","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.6297143} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.922922,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c453c200-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef","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":"c453c200-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/signaling 200 56ms","method":"POST","requestID":"c453c200-7a5f-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 51ms","method":"POST","requestID":"c453c200-7a5f-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca","requestID":"d063437178f699bca8464049fd5752d7"} gateway-1 | {"time_local":"24/Sep/2024:10:28:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.567","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d063437178f699bca8464049fd5752d7"} experiment-1 | {"level":"info","message":"DELETE /experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca 204 562ms","method":"DELETE","requestID":"d063437178f699bca8464049fd5752d7","responseTime":562,"status":204,"url":"/experiments/c0e6b1d2-c1bb-46bc-a58f-270e64ffeeca"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 313ms","method":"POST","requestID":"6505b3f99dd99a5fdaeafa4740a7dad4","responseTime":313,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.345","http_referrer":"","http_user_agent":"node-fetch","requestID":"6505b3f99dd99a5fdaeafa4740a7dad4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 311ms","method":"POST","requestID":"5eaff640aaefc252d922a53bbd9c42b6","responseTime":311,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.318","http_referrer":"","http_user_agent":"node-fetch","requestID":"5eaff640aaefc252d922a53bbd9c42b6"} gateway-1 | {"time_local":"24/Sep/2024:10:28:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2263","request_time":"5.969","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"602988eed76fc7f676b8e784ef771089"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/00b2ba3e-14bb-4edb-a99a-d58f7cd0f6ef' closed"} gateway-1 | {"time_local":"24/Sep/2024:10:28:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2510","request_time":"4.604","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":"3b5343731b964e42b13becc0f71e9513"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4b75fea3-e361-4571-956d-1439d3313505' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"97211c3bc4b84b252202fd28d13cf610"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMH0.H9sCXXk4FyRafefe7E9QsGFOwO1Ws9HDwF1pJjFZkT8","level":"info","message":"auth send jwt","requestID":"97211c3bc4b84b252202fd28d13cf610"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"97211c3bc4b84b252202fd28d13cf610","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.907061,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"97211c3bc4b84b252202fd28d13cf610","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173720,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMH0.H9sCXXk4FyRafefe7E9QsGFOwO1Ws9HDwF1pJjFZkT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 36ms","method":"POST","requestID":"97211c3bc4b84b252202fd28d13cf610","responseTime":36,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b8296467-bb13-421e-b4ae-ece2460dc42b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.9251862} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"97211c3bc4b84b252202fd28d13cf610","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d5c3b6e7-b44f-4677-b69a-2647c131a9f2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.933185} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"97211c3bc4b84b252202fd28d13cf610","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"19c1f2be-5b47-4443-8fca-eb5c51a14998","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.9677942} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f0f6c5f-6b94-4309-b19f-4eb9073dcbd4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.9812431} authorization-1 | {"level":"info","message":"POST /relations/update 200 59ms","method":"POST","requestID":"97211c3bc4b84b252202fd28d13cf610","responseTime":59,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:40.967756436Z"}]},"request_id":"31c662ad-fd17-4d7b-80e5-99f34c6667fa","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173720.9959903} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"97211c3bc4b84b252202fd28d13cf610"} device-1 | {"level":"info","message":"POST /devices? 201 164ms","method":"POST","requestID":"97211c3bc4b84b252202fd28d13cf610","responseTime":164,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.172","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"97211c3bc4b84b252202fd28d13cf610"} authorization-1 | {"level":"info","message":"POST /relations/query 200 34ms","method":"POST","requestID":"97211c3bc4b84b252202fd28d13cf610","responseTime":34,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices called","requestID":"13112c28d4b35218612d1dc32df01034"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMX0.a8X8ym160ZugMvOCbaz8njHv8Fo8DExnFwo-OdJxZf0","level":"info","message":"auth send jwt","requestID":"13112c28d4b35218612d1dc32df01034"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"13112c28d4b35218612d1dc32df01034","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.962624,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"13112c28d4b35218612d1dc32df01034","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173721,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMX0.a8X8ym160ZugMvOCbaz8njHv8Fo8DExnFwo-OdJxZf0"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"13112c28d4b35218612d1dc32df01034","responseTime":15,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"96fb7340-128a-43ac-99b4-5ebfa6a5e49b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173721.0932093} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"13112c28d4b35218612d1dc32df01034","responseTime":7,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1600816-1ca1-4c2f-8a10-b683f684a1c8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173721.1012626} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"13112c28d4b35218612d1dc32df01034","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"ce793ca9-bdc9-42f7-b8c8-a79deaafd3e2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173721.1209323} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24c1e9b1-17a5-4e9a-b46e-9a9995e5c210","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173721.1217303} authorization-1 | {"level":"info","message":"POST /relations/update 200 47ms","method":"POST","requestID":"13112c28d4b35218612d1dc32df01034","responseTime":47,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:41.120916029Z"}]},"request_id":"10e84537-4a82-4c0a-b813-57583ef507a4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173721.153895} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"13112c28d4b35218612d1dc32df01034","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"13112c28d4b35218612d1dc32df01034"} device-1 | {"level":"info","message":"POST /devices? 201 119ms","method":"POST","requestID":"13112c28d4b35218612d1dc32df01034","responseTime":119,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28: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.126","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"13112c28d4b35218612d1dc32df01034"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMn0.L6BcQ-pFGz46CaICLJ4t_96ECsFR9IJN-7bIGh-JAqI","level":"info","message":"auth send jwt","requestID":"b25771a16626597241936617b53038ed"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"b25771a16626597241936617b53038ed","responseTime":11,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b25771a16626597241936617b53038ed"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.905973,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b25771a16626597241936617b53038ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173722,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMn0.L6BcQ-pFGz46CaICLJ4t_96ECsFR9IJN-7bIGh-JAqI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b25771a16626597241936617b53038ed","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:40.967756436Z"}]},"request_id":"b90b9cbe-bc23-4d59-a8a7-b64fe9a19218","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173722.674663} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b25771a16626597241936617b53038ed","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18edfef1-3dab-4bba-bb2c-fd026218db3a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173722.7062824} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"b25771a16626597241936617b53038ed","responseTime":29,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:40.967756436Z"}]},"request_id":"9551bbf8-7d01-4530-89e1-83917b104e65","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173722.733622} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b25771a16626597241936617b53038ed","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b25771a16626597241936617b53038ed"} device-1 | {"level":"info","message":"PATCH /devices/15565584-6a64-4e72-9d8d-7e9f4611564c 200 78ms","method":"PATCH","requestID":"b25771a16626597241936617b53038ed","responseTime":78,"status":200,"url":"/devices/15565584-6a64-4e72-9d8d-7e9f4611564c"} gateway-1 | {"time_local":"24/Sep/2024:10:28:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/15565584-6a64-4e72-9d8d-7e9f4611564c HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.091","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b25771a16626597241936617b53038ed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMn0.L6BcQ-pFGz46CaICLJ4t_96ECsFR9IJN-7bIGh-JAqI","level":"info","message":"auth send jwt","requestID":"08a81410c4db425418b3a93b557f3a9d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"08a81410c4db425418b3a93b557f3a9d"} authentication-1 | {"level":"info","message":"GET /auth 200 15ms","method":"GET","requestID":"08a81410c4db425418b3a93b557f3a9d","responseTime":15,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.011832,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"08a81410c4db425418b3a93b557f3a9d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173722,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMn0.L6BcQ-pFGz46CaICLJ4t_96ECsFR9IJN-7bIGh-JAqI"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"08a81410c4db425418b3a93b557f3a9d","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"08a81410c4db425418b3a93b557f3a9d"} device-1 | {"level":"info","message":"POST /devices/15565584-6a64-4e72-9d8d-7e9f4611564c/websocket 200 55ms","method":"POST","requestID":"08a81410c4db425418b3a93b557f3a9d","responseTime":55,"status":200,"url":"/devices/15565584-6a64-4e72-9d8d-7e9f4611564c/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:28:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/15565584-6a64-4e72-9d8d-7e9f4611564c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.063","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"08a81410c4db425418b3a93b557f3a9d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMn0.L6BcQ-pFGz46CaICLJ4t_96ECsFR9IJN-7bIGh-JAqI","level":"info","message":"auth send jwt","requestID":"52a7d544e3a55fc80d730919010497b7"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"52a7d544e3a55fc80d730919010497b7","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"52a7d544e3a55fc80d730919010497b7"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.116395,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"52a7d544e3a55fc80d730919010497b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173722,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMn0.L6BcQ-pFGz46CaICLJ4t_96ECsFR9IJN-7bIGh-JAqI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"52a7d544e3a55fc80d730919010497b7","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:41.120916029Z"}]},"request_id":"d748ccc6-d005-4c87-915c-f0313b27561c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173722.890155} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"52a7d544e3a55fc80d730919010497b7","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d25b8214-d1fe-40b3-978a-a7683e8ab9b6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173722.8996162} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"52a7d544e3a55fc80d730919010497b7","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"device 'http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c' connected"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:41.120916029Z"}]},"request_id":"19eac1c1-0775-4fcf-b59a-cedce6064ba9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173722.949991} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"52a7d544e3a55fc80d730919010497b7","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"52a7d544e3a55fc80d730919010497b7"} device-1 | {"level":"info","message":"PATCH /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc 200 112ms","method":"PATCH","requestID":"52a7d544e3a55fc80d730919010497b7","responseTime":112,"status":200,"url":"/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc"} gateway-1 | {"time_local":"24/Sep/2024:10:28:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.123","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"52a7d544e3a55fc80d730919010497b7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMn0.L6BcQ-pFGz46CaICLJ4t_96ECsFR9IJN-7bIGh-JAqI","level":"info","message":"auth send jwt","requestID":"d64c547016c908d68144b4b30cd4ab7e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d64c547016c908d68144b4b30cd4ab7e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d64c547016c908d68144b4b30cd4ab7e"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.970382,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d64c547016c908d68144b4b30cd4ab7e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173722,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyMn0.L6BcQ-pFGz46CaICLJ4t_96ECsFR9IJN-7bIGh-JAqI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d64c547016c908d68144b4b30cd4ab7e","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d64c547016c908d68144b4b30cd4ab7e"} gateway-1 | {"time_local":"24/Sep/2024:10:28:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.065","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d64c547016c908d68144b4b30cd4ab7e"} device-1 | {"level":"info","message":"POST /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/websocket 200 58ms","method":"POST","requestID":"d64c547016c908d68144b4b30cd4ab7e","responseTime":58,"status":200,"url":"/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE","level":"info","message":"auth send jwt","requestID":"c462a0fcd769a39db3e730145d3c5316"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c462a0fcd769a39db3e730145d3c5316","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c462a0fcd769a39db3e730145d3c5316"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.917358,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c462a0fcd769a39db3e730145d3c5316","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173723,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c462a0fcd769a39db3e730145d3c5316","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:40.967756436Z"}]},"request_id":"6dba1587-a9fd-4bf1-a6bd-2a15ae59ee73","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.0899777} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c462a0fcd769a39db3e730145d3c5316","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c462a0fcd769a39db3e730145d3c5316"} gateway-1 | {"time_local":"24/Sep/2024:10:28:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/15565584-6a64-4e72-9d8d-7e9f4611564c? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c462a0fcd769a39db3e730145d3c5316"} device-1 | {"level":"info","message":"GET /devices/15565584-6a64-4e72-9d8d-7e9f4611564c? 200 51ms","method":"GET","requestID":"c462a0fcd769a39db3e730145d3c5316","responseTime":51,"status":200,"url":"/devices/15565584-6a64-4e72-9d8d-7e9f4611564c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE","level":"info","message":"auth send jwt","requestID":"bb9262cb6ca05bf532720c9530946b7f"} authentication-1 | {"level":"info","message":"GET /auth 200 10ms","method":"GET","requestID":"bb9262cb6ca05bf532720c9530946b7f","responseTime":10,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb9262cb6ca05bf532720c9530946b7f"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.924672,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bb9262cb6ca05bf532720c9530946b7f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173723,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bb9262cb6ca05bf532720c9530946b7f","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:41.120916029Z"}]},"request_id":"514fa23a-afe0-44c1-96b7-90cf3f48c0bf","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.151867} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bb9262cb6ca05bf532720c9530946b7f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb9262cb6ca05bf532720c9530946b7f"} gateway-1 | {"time_local":"24/Sep/2024:10:28:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bb9262cb6ca05bf532720c9530946b7f"} device-1 | {"level":"info","message":"GET /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc? 200 55ms","method":"GET","requestID":"bb9262cb6ca05bf532720c9530946b7f","responseTime":55,"status":200,"url":"/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE","level":"info","message":"auth send jwt","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6310099d4c1345e4bda15a7c356d02c9"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.944516,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"6310099d4c1345e4bda15a7c356d02c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173723,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6310099d4c1345e4bda15a7c356d02c9","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 16ms","method":"GET","requestID":"6310099d4c1345e4bda15a7c356d02c9","responseTime":16,"status":200,"url":"/auth"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Attempting to run experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Attempting to book experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Successfully booked experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c5f22fc0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c5f27de0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.98272,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c5f22fc0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173723,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"c5f22fc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918155,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c5f27de0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173723,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"c5f27de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:40.967756436Z"}]},"request_id":"d6abb323-f16f-4f99-95f0-27a1c18087bf","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.3761618} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"c5f22fc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":14,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:41.120916029Z"}]},"request_id":"cc0dbd45-2526-4549-a934-e8c590022e9b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.3805833} authorization-1 | {"level":"info","message":"POST /relations/query 200 15ms","method":"POST","requestID":"c5f27de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c5f22fc0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/15565584-6a64-4e72-9d8d-7e9f4611564c? 200 70ms","method":"GET","requestID":"c5f22fc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":70,"status":200,"url":"/devices/15565584-6a64-4e72-9d8d-7e9f4611564c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c5f27de0-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Setting up experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} device-1 | {"level":"info","message":"GET /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc? 200 101ms","method":"GET","requestID":"c5f27de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":101,"status":200,"url":"/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Successfully set up experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c61c7410-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c61ce940-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c61dac90-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.223772,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.964569,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c61c7410-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173723,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"c61c7410-7a5f-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c61ce940-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173723,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"c61ce940-7a5f-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Successfully running experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.971032,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50c7db92-4076-4215-871a-1b381603dc74","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.6533742} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:41.120916029Z"}]},"request_id":"bf27476a-b0b7-4741-9299-8e3cc2da21cb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.6554961} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"c61ce940-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c61ce940-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc? 200 60ms","method":"GET","requestID":"c61ce940-7a5f-11ef-8bac-49f2f0d74a99","responseTime":60,"status":200,"url":"/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c61dac90-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 48ms","method":"POST","requestID":"c61dac90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:40.967756436Z"}]},"request_id":"e03af6a4-e4fd-4ae1-87c6-d327181c01d9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.6706452} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c61c7410-7a5f-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c61dac90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/15565584-6a64-4e72-9d8d-7e9f4611564c/signaling 200 63ms","method":"POST","requestID":"c61dac90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":63,"status":200,"url":"/devices/15565584-6a64-4e72-9d8d-7e9f4611564c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c62c0470-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c61c7410-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/15565584-6a64-4e72-9d8d-7e9f4611564c? 200 112ms","method":"GET","requestID":"c61c7410-7a5f-11ef-8bac-49f2f0d74a99","responseTime":112,"status":200,"url":"/devices/15565584-6a64-4e72-9d8d-7e9f4611564c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c62db220-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f924d4d-e36a-4372-94ea-4ccf1c35ebcd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.710411} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.472176,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c62c0470-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","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":"c62c0470-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/signaling 200 53ms","method":"POST","requestID":"c62c0470-7a5f-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 51ms","method":"POST","requestID":"c62c0470-7a5f-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff3c068cc-381d-4245-a118-1ec19041c01d#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff3c068cc-381d-4245-a118-1ec19041c01d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"f1e2b4f3-c984-4fef-af12-b1224b36f937","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.7193344} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d2c608a-a9dd-43e1-bf94-30b76cc46679","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.7206323} authorization-1 | {"level":"info","message":"POST /relations/update 200 107ms","method":"POST","requestID":"6310099d4c1345e4bda15a7c356d02c9","responseTime":107,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.363392,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b36b7a58-34b1-4b9c-8f97-eb3b46becd53","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.7652106} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c62db220-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"c62db220-7a5f-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 604ms","method":"POST","requestID":"6310099d4c1345e4bda15a7c356d02c9","responseTime":604,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"815","request_time":"0.610","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6310099d4c1345e4bda15a7c356d02c9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE","level":"info","message":"auth send jwt","requestID":"292ba64b339c9a1fe26e3ec180238fd7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"292ba64b339c9a1fe26e3ec180238fd7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c62db220-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/15565584-6a64-4e72-9d8d-7e9f4611564c/signaling 200 103ms","method":"POST","requestID":"c62db220-7a5f-11ef-8bac-49f2f0d74a99","responseTime":103,"status":200,"url":"/devices/15565584-6a64-4e72-9d8d-7e9f4611564c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c63ddec0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"292ba64b339c9a1fe26e3ec180238fd7"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f75cc63-deb9-4214-af41-c64b5d8a71ba","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.830581} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":28.17488,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":28.848506,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c63ddec0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"c63ddec0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"292ba64b339c9a1fe26e3ec180238fd7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173723,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"292ba64b339c9a1fe26e3ec180238fd7","responseTime":35,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:40.967756436Z"}]},"request_id":"896a29d4-3677-4ff8-8cf4-08a820fd1552","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.8693209} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c63ddec0-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Building connection plan","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"ab6a2914-a258-4c47-8ab0-137236370844"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"28984017-811a-4931-8466-34e1299fe2b0"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"3367bd4d-e471-4844-94d9-413f0e486fb4"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6310099d4c1345e4bda15a7c356d02c9"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"6310099d4c1345e4bda15a7c356d02c9"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"292ba64b339c9a1fe26e3ec180238fd7","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/signaling 200 53ms","method":"POST","requestID":"c63ddec0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c6466a40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"292ba64b339c9a1fe26e3ec180238fd7"} gateway-1 | {"time_local":"24/Sep/2024:10:28:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/15565584-6a64-4e72-9d8d-7e9f4611564c? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.101","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"292ba64b339c9a1fe26e3ec180238fd7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE","level":"info","message":"auth send jwt","requestID":"1192957a3607d9261fe8c596c7ba41d4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1192957a3607d9261fe8c596c7ba41d4","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.91132,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} device-1 | {"level":"info","message":"GET /devices/15565584-6a64-4e72-9d8d-7e9f4611564c? 200 97ms","method":"GET","requestID":"292ba64b339c9a1fe26e3ec180238fd7","responseTime":97,"status":200,"url":"/devices/15565584-6a64-4e72-9d8d-7e9f4611564c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1192957a3607d9261fe8c596c7ba41d4"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c6466a40-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173723,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 48ms","method":"POST","requestID":"c6466a40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.916695,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1192957a3607d9261fe8c596c7ba41d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173723,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyM30.5nadTIOf2rizwTooCo4GEPDmMXIn8uPPdqXsBE8hzFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1192957a3607d9261fe8c596c7ba41d4","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:41.120916029Z"}]},"request_id":"42d30dfe-3a2f-475f-b64f-98c1c453c262","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.960882} authorization-1 | {"level":"info","message":"POST /relations/query 200 35ms","method":"POST","requestID":"1192957a3607d9261fe8c596c7ba41d4","responseTime":35,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1192957a3607d9261fe8c596c7ba41d4"} gateway-1 | {"time_local":"24/Sep/2024:10:28:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1192957a3607d9261fe8c596c7ba41d4"} device-1 | {"level":"info","message":"GET /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc? 200 57ms","method":"GET","requestID":"1192957a3607d9261fe8c596c7ba41d4","responseTime":57,"status":200,"url":"/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"6d8fdb37-d017-49fe-938a-cf1c384ad110","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173723.9866772} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4085e795-14ff-4cb0-8672-aeb88172d20e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173724.0122442} authorization-1 | {"level":"info","message":"POST /relations/update 200 41ms","method":"POST","requestID":"c6466a40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c6466a40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c6466a40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6'","requestID":"c6466a40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6'","requestID":"c6466a40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c6466a40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 245ms","method":"POST","requestID":"c6466a40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":245,"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":"c6466a40-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6310099d4c1345e4bda15a7c356d02c9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c6839a50-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:44Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ffeaafdf-0328-49be-9884-0392b78eb348","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173724.2832088} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.487824,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c6839a50-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","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":"c6839a50-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/15565584-6a64-4e72-9d8d-7e9f4611564c/signaling 200 14ms","method":"POST","requestID":"c6839a50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/devices/15565584-6a64-4e72-9d8d-7e9f4611564c/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"c6839a50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c6863260-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:44Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.330551,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:44Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df129f30-00ff-44c5-bb84-bc45050e0001","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173724.336046} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c6863260-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 44ms","method":"POST","requestID":"c6863260-7a5f-11ef-8bac-49f2f0d74a99","responseTime":44,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c6863260-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/signaling 200 85ms","method":"POST","requestID":"c6863260-7a5f-11ef-8bac-49f2f0d74a99","responseTime":85,"status":200,"url":"/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/signaling"} device-1 | {"device":"15565584-6a64-4e72-9d8d-7e9f4611564c","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":"d7f29862-d142-4727-8719-c966b27a76e6","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"79385898-2b95-4914-a81f-4d8d2e1edbfc","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":"d7f29862-d142-4727-8719-c966b27a76e6","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"79385898-2b95-4914-a81f-4d8d2e1edbfc","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":"79385898-2b95-4914-a81f-4d8d2e1edbfc","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":"79385898-2b95-4914-a81f-4d8d2e1edbfc","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":"79385898-2b95-4914-a81f-4d8d2e1edbfc","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/d7f29862-d142-4727-8719-c966b27a76e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d7f29862-d142-4727-8719-c966b27a76e6","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"85bfbc43f0546acb58a6b9ee9a4d4a89","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":"85bfbc43f0546acb58a6b9ee9a4d4a89","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/79385898-2b95-4914-a81f-4d8d2e1edbfc"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6"}}},"level":"info","message":"received a callback","requestID":"85bfbc43f0546acb58a6b9ee9a4d4a89"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"85bfbc43f0546acb58a6b9ee9a4d4a89","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:28:46 +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":"85bfbc43f0546acb58a6b9ee9a4d4a89"} device-1 | {"device":"15565584-6a64-4e72-9d8d-7e9f4611564c","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":"15565584-6a64-4e72-9d8d-7e9f4611564c","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":"15565584-6a64-4e72-9d8d-7e9f4611564c","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":"79385898-2b95-4914-a81f-4d8d2e1edbfc","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":"15565584-6a64-4e72-9d8d-7e9f4611564c","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 | {"data":{"peerconnection":"d7f29862-d142-4727-8719-c966b27a76e6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"79385898-2b95-4914-a81f-4d8d2e1edbfc","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":"15565584-6a64-4e72-9d8d-7e9f4611564c","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":"d7f29862-d142-4727-8719-c966b27a76e6","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/d7f29862-d142-4727-8719-c966b27a76e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d7f29862-d142-4727-8719-c966b27a76e6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"032f18a99986592fb58297859c3788a1","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":"032f18a99986592fb58297859c3788a1","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/79385898-2b95-4914-a81f-4d8d2e1edbfc"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6"}}},"level":"info","message":"received a callback","requestID":"032f18a99986592fb58297859c3788a1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyNn0.0sD8wlADQRzDbtEmCU0cL0wT2TPQRgzEz3MK8mL6uzA","level":"info","message":"auth send jwt","requestID":"faafda571416a4585f4f0b57e141c972"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"faafda571416a4585f4f0b57e141c972","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f3c068cc-381d-4245-a118-1ec19041c01d","requestID":"faafda571416a4585f4f0b57e141c972"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c7d60af0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd7f29862-d142-4727-8719-c966b27a76e6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"353f6736-610a-41d0-a419-8da38e309e71","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173726.503837} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.337369,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c7d60af0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6","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 54ms","method":"POST","requestID":"c7d60af0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":54,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.811419,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"faafda571416a4585f4f0b57e141c972","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173726,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyNn0.0sD8wlADQRzDbtEmCU0cL0wT2TPQRgzEz3MK8mL6uzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 54ms","method":"POST","requestID":"faafda571416a4585f4f0b57e141c972","responseTime":54,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f3c068cc-381d-4245-a118-1ec19041c01d","requestID":"faafda571416a4585f4f0b57e141c972"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c7d60af0-7a5f-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:28:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f3c068cc-381d-4245-a118-1ec19041c01d HTTP/1.1","status": "200","body_bytes_sent":"886","request_time":"0.083","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"faafda571416a4585f4f0b57e141c972"} experiment-1 | {"level":"info","message":"GET /experiments/f3c068cc-381d-4245-a118-1ec19041c01d 200 77ms","method":"GET","requestID":"faafda571416a4585f4f0b57e141c972","responseTime":77,"status":200,"url":"/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"} device-1 | {"level":"info","message":"GET /peerconnections/d7f29862-d142-4727-8719-c966b27a76e6 200 79ms","method":"GET","requestID":"c7d60af0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":79,"status":200,"url":"/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 174ms","method":"POST","requestID":"032f18a99986592fb58297859c3788a1","responseTime":174,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7eaa460-7a5f-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:28:46 +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.183","http_referrer":"","http_user_agent":"node-fetch","requestID":"032f18a99986592fb58297859c3788a1"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b95b8555-c715-4b31-95c7-6c3da1812fe3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173726.637274} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.003302,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c7eaa460-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"c7eaa460-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyNn0.0sD8wlADQRzDbtEmCU0cL0wT2TPQRgzEz3MK8mL6uzA","level":"info","message":"auth send jwt","requestID":"a6385b7c6f7785ea8885e7feaf5b280c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a6385b7c6f7785ea8885e7feaf5b280c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7eaa460-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f3c068cc-381d-4245-a118-1ec19041c01d","requestID":"a6385b7c6f7785ea8885e7feaf5b280c"} device-1 | {"level":"info","message":"POST /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/signaling 200 49ms","method":"POST","requestID":"c7eaa460-7a5f-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7f2bab0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":10.572226,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a6385b7c6f7785ea8885e7feaf5b280c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173726,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyNn0.0sD8wlADQRzDbtEmCU0cL0wT2TPQRgzEz3MK8mL6uzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 42ms","method":"POST","requestID":"a6385b7c6f7785ea8885e7feaf5b280c","responseTime":42,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.505625,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4822ad84-7ee7-4aaa-8abe-c71aceadf777","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173726.6943717} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c7f2bab0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","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":"c7f2bab0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/15565584-6a64-4e72-9d8d-7e9f4611564c/signaling 200 47ms","method":"POST","requestID":"c7f2bab0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/devices/15565584-6a64-4e72-9d8d-7e9f4611564c/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 40ms","method":"POST","requestID":"c7f2bab0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f3c068cc-381d-4245-a118-1ec19041c01d","requestID":"a6385b7c6f7785ea8885e7feaf5b280c"} gateway-1 | {"time_local":"24/Sep/2024:10:28:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f3c068cc-381d-4245-a118-1ec19041c01d HTTP/1.1","status": "200","body_bytes_sent":"888","request_time":"0.100","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a6385b7c6f7785ea8885e7feaf5b280c"} experiment-1 | {"level":"info","message":"GET /experiments/f3c068cc-381d-4245-a118-1ec19041c01d 200 94ms","method":"GET","requestID":"a6385b7c6f7785ea8885e7feaf5b280c","responseTime":94,"status":200,"url":"/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyNn0.0sD8wlADQRzDbtEmCU0cL0wT2TPQRgzEz3MK8mL6uzA","level":"info","message":"auth send jwt","requestID":"665bffb041734310ae12ceb094bc676c"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f3c068cc-381d-4245-a118-1ec19041c01d","requestID":"665bffb041734310ae12ceb094bc676c"} authentication-1 | {"level":"info","message":"GET /auth 200 10ms","method":"GET","requestID":"665bffb041734310ae12ceb094bc676c","responseTime":10,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.01634,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"665bffb041734310ae12ceb094bc676c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173726,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyNn0.0sD8wlADQRzDbtEmCU0cL0wT2TPQRgzEz3MK8mL6uzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"665bffb041734310ae12ceb094bc676c","responseTime":35,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Attempting to finish experiment","requestID":"665bffb041734310ae12ceb094bc676c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c8086590-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.028091,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c8086590-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173726,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyNn0.0sD8wlADQRzDbtEmCU0cL0wT2TPQRgzEz3MK8mL6uzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c8086590-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"device":"79385898-2b95-4914-a81f-4d8d2e1edbfc","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":"79385898-2b95-4914-a81f-4d8d2e1edbfc","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":"79385898-2b95-4914-a81f-4d8d2e1edbfc","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/d7f29862-d142-4727-8719-c966b27a76e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d7f29862-d142-4727-8719-c966b27a76e6","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6727731e817a74f62fdfceaf1a3f8821","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":"6727731e817a74f62fdfceaf1a3f8821","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":"closed","url":"http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6"}}},"level":"info","message":"received a callback","requestID":"6727731e817a74f62fdfceaf1a3f8821"} device-1 | {"device":"15565584-6a64-4e72-9d8d-7e9f4611564c","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"}} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd7f29862-d142-4727-8719-c966b27a76e6': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd7f29862-d142-4727-8719-c966b27a76e6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"5ed72c77-f2fb-43e6-9a07-eedcb257d93b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173726.88855} device-1 | {"device":"15565584-6a64-4e72-9d8d-7e9f4611564c","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"}} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4735d006-efa3-4f6e-a7c1-61073d2af00a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173726.8892267} device-1 | {"device":"15565584-6a64-4e72-9d8d-7e9f4611564c","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"}} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"c8086590-7a5f-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"94a7e1b078768966dcdca0d261b39e7d","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":"94a7e1b078768966dcdca0d261b39e7d","responseTime":2,"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/79385898-2b95-4914-a81f-4d8d2e1edbfc"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6"}}},"level":"info","message":"received a callback","requestID":"94a7e1b078768966dcdca0d261b39e7d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c8086590-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/d7f29862-d142-4727-8719-c966b27a76e6 204 117ms","method":"DELETE","requestID":"c8086590-7a5f-11ef-8bac-49f2f0d74a99","responseTime":117,"status":204,"url":"/peerconnections/d7f29862-d142-4727-8719-c966b27a76e6"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"},"level":"info","message":"Successfully finished experiment","requestID":"665bffb041734310ae12ceb094bc676c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c8275f40-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:47Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79385898-2b95-4914-a81f-4d8d2e1edbfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"08ec8812-fa93-4d77-b25c-8f618ec605a1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.0351095} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.762585,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c8275f40-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc","object_type":"device","rebac_allow":false,"scope_allow":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":"c8275f40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c8275f40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/signaling 200 17ms","method":"POST","requestID":"c8275f40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/devices/79385898-2b95-4914-a81f-4d8d2e1edbfc/signaling"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff3c068cc-381d-4245-a118-1ec19041c01d': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff3c068cc-381d-4245-a118-1ec19041c01d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"f4e837b7-f1bf-469a-8def-e765d4437007","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.0525453} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c82b08c0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"abe94289-9bf9-4615-b255-c5aaaf8a23db","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.0538015} authorization-1 | {"level":"info","message":"POST /relations/update 200 86ms","method":"POST","requestID":"665bffb041734310ae12ceb094bc676c","responseTime":86,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:47Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15565584-6a64-4e72-9d8d-7e9f4611564c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"03a21e15-533f-466e-a0a7-4d0205aa0b4f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.0940304} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.094275,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c82b08c0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 46ms","method":"POST","requestID":"c82b08c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c82b08c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/15565584-6a64-4e72-9d8d-7e9f4611564c/signaling 200 54ms","method":"POST","requestID":"c82b08c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":54,"status":200,"url":"/devices/15565584-6a64-4e72-9d8d-7e9f4611564c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f3c068cc-381d-4245-a118-1ec19041c01d","requestID":"665bffb041734310ae12ceb094bc676c"} experiment-1 | {"level":"info","message":"DELETE /experiments/f3c068cc-381d-4245-a118-1ec19041c01d 204 471ms","method":"DELETE","requestID":"665bffb041734310ae12ceb094bc676c","responseTime":472,"status":204,"url":"/experiments/f3c068cc-381d-4245-a118-1ec19041c01d"} gateway-1 | {"time_local":"24/Sep/2024:10:28:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"4.421","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2ad80fcf883ade29b218626bb7c7abeb"} gateway-1 | {"time_local":"24/Sep/2024:10:28:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f3c068cc-381d-4245-a118-1ec19041c01d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.478","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"665bffb041734310ae12ceb094bc676c"} gateway-1 | {"time_local":"24/Sep/2024:10:28:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"4.259","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"20b08ce4333d1e4e0015107e20c21fd2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 405ms","method":"POST","requestID":"6727731e817a74f62fdfceaf1a3f8821","responseTime":405,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:28:47 +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.412","http_referrer":"","http_user_agent":"node-fetch","requestID":"6727731e817a74f62fdfceaf1a3f8821"} gateway-1 | {"time_local":"24/Sep/2024:10:28:47 +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.404","http_referrer":"","http_user_agent":"node-fetch","requestID":"94a7e1b078768966dcdca0d261b39e7d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 398ms","method":"POST","requestID":"94a7e1b078768966dcdca0d261b39e7d","responseTime":398,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyN30.MeNf2lP_-odsf8oXVddj6UqcXYrHJnaq8IbUYR4VrjE","level":"info","message":"auth send jwt","requestID":"5098d2c09687e5b836844b1ffbd6c85b"} authentication-1 | {"level":"info","message":"GET /auth 200 46ms","method":"GET","requestID":"5098d2c09687e5b836844b1ffbd6c85b","responseTime":46,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/15565584-6a64-4e72-9d8d-7e9f4611564c' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"5098d2c09687e5b836844b1ffbd6c85b"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.953815,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5098d2c09687e5b836844b1ffbd6c85b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173727,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyN30.MeNf2lP_-odsf8oXVddj6UqcXYrHJnaq8IbUYR4VrjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5098d2c09687e5b836844b1ffbd6c85b","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/79385898-2b95-4914-a81f-4d8d2e1edbfc' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0a424de-a48d-424a-9474-0da24bd6341a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"74dce651-cee1-4d57-be70-1d21bd132717","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.5215137} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5098d2c09687e5b836844b1ffbd6c85b","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae0c382b-e6c7-4a01-9fb5-14b77b0ce456","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.5603175} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5098d2c09687e5b836844b1ffbd6c85b","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0a424de-a48d-424a-9474-0da24bd6341a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"64c7c2ea-9d6a-431e-b60a-fa195a2553e7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.5925674} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc178156-1bc9-4383-b94b-5a5ded59f7ff","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.5938883} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"5098d2c09687e5b836844b1ffbd6c85b","responseTime":25,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0a424de-a48d-424a-9474-0da24bd6341a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0a424de-a48d-424a-9474-0da24bd6341a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:47.592549932Z"}]},"request_id":"b572e969-159a-422a-a07c-efd6e9009515","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.6270616} authorization-1 | {"level":"info","message":"POST /relations/query 200 30ms","method":"POST","requestID":"5098d2c09687e5b836844b1ffbd6c85b","responseTime":30,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5098d2c09687e5b836844b1ffbd6c85b"} gateway-1 | {"time_local":"24/Sep/2024:10:28:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.377","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5098d2c09687e5b836844b1ffbd6c85b"} device-1 | {"level":"info","message":"POST /devices? 201 272ms","method":"POST","requestID":"5098d2c09687e5b836844b1ffbd6c85b","responseTime":272,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyN30.MeNf2lP_-odsf8oXVddj6UqcXYrHJnaq8IbUYR4VrjE","level":"info","message":"auth send jwt","requestID":"f45248ce8c49f68a8c5bfe1123808485"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f45248ce8c49f68a8c5bfe1123808485","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f45248ce8c49f68a8c5bfe1123808485"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.049931,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f45248ce8c49f68a8c5bfe1123808485","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173727,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyN30.MeNf2lP_-odsf8oXVddj6UqcXYrHJnaq8IbUYR4VrjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f45248ce8c49f68a8c5bfe1123808485","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98d7cf9e-a363-47af-887f-3acc110c60eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"27060a6b-301e-466c-a7fe-d254014951e3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.6972134} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f45248ce8c49f68a8c5bfe1123808485","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2848a875-f71e-41b8-96d7-17b3631da3a2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.7040627} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"f45248ce8c49f68a8c5bfe1123808485","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98d7cf9e-a363-47af-887f-3acc110c60eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"ac77a7cf-60cc-48d5-9497-799b54b4214d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.759102} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a614eb1-f32b-448e-a758-8b0df08c236b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.7599547} authorization-1 | {"level":"info","message":"POST /relations/update 200 47ms","method":"POST","requestID":"f45248ce8c49f68a8c5bfe1123808485","responseTime":47,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98d7cf9e-a363-47af-887f-3acc110c60eb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F98d7cf9e-a363-47af-887f-3acc110c60eb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:47.759082709Z"}]},"request_id":"6dff7e1e-3406-434d-b7de-949ff1227d91","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.767993} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"f45248ce8c49f68a8c5bfe1123808485","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f45248ce8c49f68a8c5bfe1123808485"} gateway-1 | {"time_local":"24/Sep/2024:10:28:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f45248ce8c49f68a8c5bfe1123808485"} device-1 | {"level":"info","message":"POST /devices? 201 163ms","method":"POST","requestID":"f45248ce8c49f68a8c5bfe1123808485","responseTime":163,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyN30.MeNf2lP_-odsf8oXVddj6UqcXYrHJnaq8IbUYR4VrjE","level":"info","message":"auth send jwt","requestID":"70a81745db0fb20721330d76f3522efa"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"70a81745db0fb20721330d76f3522efa","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"70a81745db0fb20721330d76f3522efa"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.924025,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"70a81745db0fb20721330d76f3522efa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173727,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyN30.MeNf2lP_-odsf8oXVddj6UqcXYrHJnaq8IbUYR4VrjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"70a81745db0fb20721330d76f3522efa","responseTime":37,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95c2f52a-f203-4867-8eed-b24cf6a299e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"556f1e18-f535-4ef8-a474-9b6837fcad07","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.8904686} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"70a81745db0fb20721330d76f3522efa","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"95f8f1ce-26e6-461f-9988-101c18da84c3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.897805} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"70a81745db0fb20721330d76f3522efa","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95c2f52a-f203-4867-8eed-b24cf6a299e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"1b33b6a0-cafe-45e6-9dcd-8cd09a1285c3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.9518912} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c30c39ac-7016-4855-b70c-f90e4b3e98db","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.9522116} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"70a81745db0fb20721330d76f3522efa","responseTime":29,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95c2f52a-f203-4867-8eed-b24cf6a299e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F95c2f52a-f203-4867-8eed-b24cf6a299e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:47.951873069Z"}]},"request_id":"cb03a587-995f-49d3-93b2-f24ad161fcac","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173727.9592378} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"70a81745db0fb20721330d76f3522efa"} device-1 | {"level":"info","message":"POST /devices? 201 175ms","method":"POST","requestID":"70a81745db0fb20721330d76f3522efa","responseTime":175,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 30ms","method":"POST","requestID":"70a81745db0fb20721330d76f3522efa","responseTime":30,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:28:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.208","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"70a81745db0fb20721330d76f3522efa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyN30.MeNf2lP_-odsf8oXVddj6UqcXYrHJnaq8IbUYR4VrjE","level":"info","message":"auth send jwt","requestID":"3cdc523c18179339a6a3c309e1110c8c"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"3cdc523c18179339a6a3c309e1110c8c","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3cdc523c18179339a6a3c309e1110c8c"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.436212,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3cdc523c18179339a6a3c309e1110c8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173727,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyN30.MeNf2lP_-odsf8oXVddj6UqcXYrHJnaq8IbUYR4VrjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"3cdc523c18179339a6a3c309e1110c8c","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a879aff-8f5e-4cd6-85b9-665a1f518b92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"24e0be16-3c4d-428a-8544-936576b0bc94","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.0562325} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3cdc523c18179339a6a3c309e1110c8c","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2be5e380-0863-41ec-957f-0e23c2b8ef87","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.0634165} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3cdc523c18179339a6a3c309e1110c8c","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a879aff-8f5e-4cd6-85b9-665a1f518b92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"96867f2d-db7d-493a-9d9c-d7f54b157bdc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.0750768} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61619d65-acb2-4f00-af3a-50c8daff325f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.0758836} authorization-1 | {"level":"info","message":"POST /relations/update 200 43ms","method":"POST","requestID":"3cdc523c18179339a6a3c309e1110c8c","responseTime":43,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a879aff-8f5e-4cd6-85b9-665a1f518b92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4a879aff-8f5e-4cd6-85b9-665a1f518b92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:48.075058105Z"}]},"request_id":"bdda0ca3-e948-4c31-b62a-8f6ba1e0e551","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.1201093} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3cdc523c18179339a6a3c309e1110c8c"} device-1 | {"level":"info","message":"POST /devices? 201 128ms","method":"POST","requestID":"3cdc523c18179339a6a3c309e1110c8c","responseTime":128,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3cdc523c18179339a6a3c309e1110c8c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 17ms","method":"POST","requestID":"3cdc523c18179339a6a3c309e1110c8c","responseTime":17,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw","level":"info","message":"auth send jwt","requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1"} device-1 | {"level":"info","message":"postDevices called","requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1","responseTime":7,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.936229,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173728,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1","responseTime":34,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0230793c-5176-4245-b260-0e0da21e544f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d8ccfda0-d30b-4731-97e4-2ba6fdacc8e6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.229236} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"142b2856-2b8c-4d16-b5b6-65fc50f1b9d2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.2365587} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0230793c-5176-4245-b260-0e0da21e544f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"208ab292-b171-4255-8213-ab52a2d4ff06","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.2495117} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01f25c04-8a90-47bb-be3d-3fd9e8833623","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.2502918} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0230793c-5176-4245-b260-0e0da21e544f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0230793c-5176-4245-b260-0e0da21e544f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:48.249493180Z"}]},"request_id":"c7e8412d-0125-4d81-9ce7-6e45af10f028","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.2597964} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1","responseTime":31,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:28:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1"} device-1 | {"level":"info","message":"POST /devices? 201 160ms","method":"POST","requestID":"6844eb1ca0c12f2f00cac4a8fbea05d1","responseTime":160,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw","level":"info","message":"auth send jwt","requestID":"73ae786d91678a091e9b8a649d698fb3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"73ae786d91678a091e9b8a649d698fb3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"73ae786d91678a091e9b8a649d698fb3"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.003748,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"73ae786d91678a091e9b8a649d698fb3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173728,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"73ae786d91678a091e9b8a649d698fb3","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14e2c12b-cce5-471c-b524-4ad796602eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5b75361a-4e17-45d8-b54a-372d9d5c3ca9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.3482645} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"73ae786d91678a091e9b8a649d698fb3","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b8db549-27b0-438a-bbac-0b54273cde59","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.3683496} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"73ae786d91678a091e9b8a649d698fb3","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14e2c12b-cce5-471c-b524-4ad796602eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"af5ec8d6-f362-4599-a530-de48191c5f58","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.3788128} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c13e4e65-dbdb-4585-94ab-8a463d8c3150","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.3792045} authorization-1 | {"level":"info","message":"POST /relations/update 200 38ms","method":"POST","requestID":"73ae786d91678a091e9b8a649d698fb3","responseTime":38,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14e2c12b-cce5-471c-b524-4ad796602eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F14e2c12b-cce5-471c-b524-4ad796602eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:48.378794608Z"}]},"request_id":"2126d93c-a9f2-46f0-94af-441f9e5e4aff","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.4134455} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"73ae786d91678a091e9b8a649d698fb3"} device-1 | {"level":"info","message":"POST /devices? 201 127ms","method":"POST","requestID":"73ae786d91678a091e9b8a649d698fb3","responseTime":127,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"73ae786d91678a091e9b8a649d698fb3"} authorization-1 | {"level":"info","message":"POST /relations/query 200 22ms","method":"POST","requestID":"73ae786d91678a091e9b8a649d698fb3","responseTime":22,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw","level":"info","message":"auth send jwt","requestID":"f0a836ea2956db6ee68f79470d3c1995"} device-1 | {"level":"info","message":"postDevices called","requestID":"f0a836ea2956db6ee68f79470d3c1995"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"f0a836ea2956db6ee68f79470d3c1995","responseTime":12,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.983044,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f0a836ea2956db6ee68f79470d3c1995","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173728,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f0a836ea2956db6ee68f79470d3c1995","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff865e318-718f-4fdb-b1c1-384f40adf375","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"52565d89-8859-4b87-a9d9-f1ee3c88724d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.4947238} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"f0a836ea2956db6ee68f79470d3c1995","responseTime":9,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ff0a4168-b274-4616-bfe2-bcd368aef7f0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.5326746} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"f0a836ea2956db6ee68f79470d3c1995","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff865e318-718f-4fdb-b1c1-384f40adf375","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"4bb34f02-cd88-4fe5-9773-e6a3ec61a333","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.553121} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3001ffde-cbc7-47f0-b3c7-16689f550759","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.554282} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"f0a836ea2956db6ee68f79470d3c1995","responseTime":31,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff865e318-718f-4fdb-b1c1-384f40adf375","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff865e318-718f-4fdb-b1c1-384f40adf375","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:48.553102887Z"}]},"request_id":"30549928-dc7f-45fa-9bf3-eb0195f30aae","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.562504} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f0a836ea2956db6ee68f79470d3c1995"} device-1 | {"level":"info","message":"POST /devices? 201 154ms","method":"POST","requestID":"f0a836ea2956db6ee68f79470d3c1995","responseTime":154,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 30ms","method":"POST","requestID":"f0a836ea2956db6ee68f79470d3c1995","responseTime":30,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:28:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f0a836ea2956db6ee68f79470d3c1995"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw","level":"info","message":"auth send jwt","requestID":"f9b9f44761ff0c42afca110f4d2e99a3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f9b9f44761ff0c42afca110f4d2e99a3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f9b9f44761ff0c42afca110f4d2e99a3"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.321082,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f9b9f44761ff0c42afca110f4d2e99a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173728,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"f9b9f44761ff0c42afca110f4d2e99a3","responseTime":33,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3e7b66-1669-4429-ae39-33fc93a7c971","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2aa77ce5-50fe-4522-80d1-63dd8b9ccc6d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.6569085} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f9b9f44761ff0c42afca110f4d2e99a3","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cb6935b-c29a-4f0d-b027-42d2a1d2dd7e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.6634524} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"f9b9f44761ff0c42afca110f4d2e99a3","responseTime":30,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3e7b66-1669-4429-ae39-33fc93a7c971","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"ee857f44-f9c4-4b27-8ea9-3e9796d2b077","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.7195013} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e6802e46-d56f-4c78-9118-37b37ef2357b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.744909} authorization-1 | {"level":"info","message":"POST /relations/update 200 85ms","method":"POST","requestID":"f9b9f44761ff0c42afca110f4d2e99a3","responseTime":85,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3e7b66-1669-4429-ae39-33fc93a7c971","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3e7b66-1669-4429-ae39-33fc93a7c971","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:48.719481797Z"}]},"request_id":"f84ec53a-d717-479d-899f-76c7eecda79f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.752428} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f9b9f44761ff0c42afca110f4d2e99a3"} device-1 | {"level":"info","message":"POST /devices? 201 148ms","method":"POST","requestID":"f9b9f44761ff0c42afca110f4d2e99a3","responseTime":148,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f9b9f44761ff0c42afca110f4d2e99a3","responseTime":7,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:28:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f9b9f44761ff0c42afca110f4d2e99a3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw","level":"info","message":"auth send jwt","requestID":"2b153a17aa530fe8f65619ff3f378b78"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2b153a17aa530fe8f65619ff3f378b78","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2b153a17aa530fe8f65619ff3f378b78"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.949592,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2b153a17aa530fe8f65619ff3f378b78","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173728,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"2b153a17aa530fe8f65619ff3f378b78","responseTime":31,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f6834e-11c4-4976-b572-47fc44a42186","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8e246e7a-9af0-4c1f-908d-dee58b71e1b1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.8208108} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2b153a17aa530fe8f65619ff3f378b78","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a1561ae-f5af-404c-af73-2030722909dc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.8525083} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2b153a17aa530fe8f65619ff3f378b78","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f6834e-11c4-4976-b572-47fc44a42186","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"9bd9c39b-9d04-41fa-bfff-d11578545da3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.8640368} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0506b628-145a-4361-84ce-56630e8d7afe","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.8648782} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"2b153a17aa530fe8f65619ff3f378b78","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f6834e-11c4-4976-b572-47fc44a42186","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f6834e-11c4-4976-b572-47fc44a42186","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:48.864015652Z"}]},"request_id":"dd2225e6-c691-4071-8bcc-70eede6f475d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173728.8725471} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"2b153a17aa530fe8f65619ff3f378b78","responseTime":31,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2b153a17aa530fe8f65619ff3f378b78"} device-1 | {"level":"info","message":"POST /devices? 201 140ms","method":"POST","requestID":"2b153a17aa530fe8f65619ff3f378b78","responseTime":140,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b153a17aa530fe8f65619ff3f378b78"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw","level":"info","message":"auth send jwt","requestID":"fa3624ec5232c0089acb901d22939d19"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fa3624ec5232c0089acb901d22939d19","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fa3624ec5232c0089acb901d22939d19"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.935999,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fa3624ec5232c0089acb901d22939d19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173728,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOH0.yKTvB7g5MsQdOuvt_XcStIJhkQk7RDngjE4tR9gJ9rw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"fa3624ec5232c0089acb901d22939d19","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe90dc45-4838-4577-b5f0-552394f1e34f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c573ddcf-a342-40ef-a64a-78a8b80c3ce5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.0089078} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fa3624ec5232c0089acb901d22939d19","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c400656-dce9-4d7d-a878-fc64d3a99767","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.0160809} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fa3624ec5232c0089acb901d22939d19","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe90dc45-4838-4577-b5f0-552394f1e34f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"775dc354-68da-4de7-b4a6-811cdd20c27a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.0562992} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d6c3332-af22-442a-af5d-ee2c445a31d0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.064048} authorization-1 | {"level":"info","message":"POST /relations/update 200 57ms","method":"POST","requestID":"fa3624ec5232c0089acb901d22939d19","responseTime":57,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe90dc45-4838-4577-b5f0-552394f1e34f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe90dc45-4838-4577-b5f0-552394f1e34f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.056276220Z"}]},"request_id":"68c419d1-8fd3-4206-8acc-7527464196d8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.076702} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fa3624ec5232c0089acb901d22939d19"} device-1 | {"level":"info","message":"POST /devices? 201 165ms","method":"POST","requestID":"fa3624ec5232c0089acb901d22939d19","responseTime":165,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.199","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fa3624ec5232c0089acb901d22939d19"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI","level":"info","message":"auth send jwt","requestID":"ae856be3efc8991cc7b41b9958b9bab4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ae856be3efc8991cc7b41b9958b9bab4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ae856be3efc8991cc7b41b9958b9bab4"} authorization-1 | {"level":"info","message":"POST /relations/query 200 48ms","method":"POST","requestID":"fa3624ec5232c0089acb901d22939d19","responseTime":48,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.87313,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ae856be3efc8991cc7b41b9958b9bab4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173729,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ae856be3efc8991cc7b41b9958b9bab4","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59c498d6-ed53-45e7-81d5-464275207d57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"717dc375-44ee-48e1-84f5-2c4dca78ab6a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.1773698} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae856be3efc8991cc7b41b9958b9bab4","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3601b10-8220-4545-9437-f2ba3e9b7c17","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.1846328} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"ae856be3efc8991cc7b41b9958b9bab4","responseTime":33,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59c498d6-ed53-45e7-81d5-464275207d57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"5068b384-6ef2-4108-9f7d-4d4dc9034133","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.264217} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"310c0ad7-eae7-49bf-8628-8e27b8757825","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.2646556} authorization-1 | {"level":"info","message":"POST /relations/update 200 83ms","method":"POST","requestID":"ae856be3efc8991cc7b41b9958b9bab4","responseTime":83,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59c498d6-ed53-45e7-81d5-464275207d57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59c498d6-ed53-45e7-81d5-464275207d57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.264196928Z"}]},"request_id":"51379971-fa04-481a-ba09-9a5dcd10da51","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.272335} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ae856be3efc8991cc7b41b9958b9bab4"} device-1 | {"level":"info","message":"POST /devices? 201 161ms","method":"POST","requestID":"ae856be3efc8991cc7b41b9958b9bab4","responseTime":161,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"ae856be3efc8991cc7b41b9958b9bab4","responseTime":10,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:28:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae856be3efc8991cc7b41b9958b9bab4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI","level":"info","message":"auth send jwt","requestID":"97dd86b1e56c159acba9b2870619c667"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"97dd86b1e56c159acba9b2870619c667","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"97dd86b1e56c159acba9b2870619c667"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.596397,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"97dd86b1e56c159acba9b2870619c667","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173729,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"97dd86b1e56c159acba9b2870619c667","responseTime":31,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F941be8f1-f253-40bd-9785-461db557daf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"772cd113-aace-42d8-a4d8-42b3f15f8c56","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.3685744} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"97dd86b1e56c159acba9b2870619c667","responseTime":28,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"096a90a6-117b-4f33-9742-5616129e63b9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.3773746} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"97dd86b1e56c159acba9b2870619c667","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"15739fd9-5756-4915-a5c0-46e9f74363ca","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.3948693} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F941be8f1-f253-40bd-9785-461db557daf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"59c6769e-3644-4d42-bd1c-728a6c925df2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.4206586} authorization-1 | {"level":"info","message":"POST /relations/update 200 46ms","method":"POST","requestID":"97dd86b1e56c159acba9b2870619c667","responseTime":46,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F941be8f1-f253-40bd-9785-461db557daf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F941be8f1-f253-40bd-9785-461db557daf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.420634566Z"}]},"request_id":"f094360e-464a-4dca-9c54-f501d5be3a7c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.4265697} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"97dd86b1e56c159acba9b2870619c667"} device-1 | {"level":"info","message":"POST /devices? 201 141ms","method":"POST","requestID":"97dd86b1e56c159acba9b2870619c667","responseTime":141,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"97dd86b1e56c159acba9b2870619c667","responseTime":7,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:28:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"97dd86b1e56c159acba9b2870619c667"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI","level":"info","message":"auth send jwt","requestID":"9ca89732321f6f8724c7b03806bd2756"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9ca89732321f6f8724c7b03806bd2756","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9ca89732321f6f8724c7b03806bd2756"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.933458,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9ca89732321f6f8724c7b03806bd2756","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173729,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"9ca89732321f6f8724c7b03806bd2756","responseTime":31,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6913524-8007-4a3d-b8eb-e65077e1f722","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2d163e3b-2227-4d9b-be2e-153aa1eb8597","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.5292404} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9ca89732321f6f8724c7b03806bd2756","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"87ed4fc9-d729-448d-8829-aa9df9eae238","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.5443692} authorization-1 | {"level":"info","message":"POST /relations/update 200 38ms","method":"POST","requestID":"9ca89732321f6f8724c7b03806bd2756","responseTime":38,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6913524-8007-4a3d-b8eb-e65077e1f722","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"809698e7-8240-44b5-bc8d-9a6e0b2b4f50","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.594487} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8cb229f9-f923-486c-8143-a72524f24d70","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.5958862} authorization-1 | {"level":"info","message":"POST /relations/update 200 56ms","method":"POST","requestID":"9ca89732321f6f8724c7b03806bd2756","responseTime":56,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6913524-8007-4a3d-b8eb-e65077e1f722","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6913524-8007-4a3d-b8eb-e65077e1f722","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.594464886Z"}]},"request_id":"76972e0a-b32b-4f59-a9a1-61ac80704aa0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.7428336} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9ca89732321f6f8724c7b03806bd2756","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9ca89732321f6f8724c7b03806bd2756"} device-1 | {"level":"info","message":"POST /devices? 201 307ms","method":"POST","requestID":"9ca89732321f6f8724c7b03806bd2756","responseTime":307,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.313","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9ca89732321f6f8724c7b03806bd2756"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI","level":"info","message":"auth send jwt","requestID":"d06cdd67f9f63c74865d6747a8154f8c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d06cdd67f9f63c74865d6747a8154f8c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d06cdd67f9f63c74865d6747a8154f8c"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926736,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/59c498d6-ed53-45e7-81d5-464275207d57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d06cdd67f9f63c74865d6747a8154f8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/59c498d6-ed53-45e7-81d5-464275207d57","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173729,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d06cdd67f9f63c74865d6747a8154f8c","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59c498d6-ed53-45e7-81d5-464275207d57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59c498d6-ed53-45e7-81d5-464275207d57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.264196928Z"}]},"request_id":"7fc14c13-f225-46ce-bf45-4abd37e48478","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.8060465} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d06cdd67f9f63c74865d6747a8154f8c","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d7bf10bf-1b25-4020-b59f-ce8acba60941","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.8390517} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"d06cdd67f9f63c74865d6747a8154f8c","responseTime":30,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59c498d6-ed53-45e7-81d5-464275207d57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59c498d6-ed53-45e7-81d5-464275207d57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.264196928Z"}]},"request_id":"d6d31a94-b261-4dd4-9f99-7aa95d71b1c8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.860349} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d06cdd67f9f63c74865d6747a8154f8c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d06cdd67f9f63c74865d6747a8154f8c"} device-1 | {"level":"info","message":"PATCH /devices/59c498d6-ed53-45e7-81d5-464275207d57? 200 78ms","method":"PATCH","requestID":"d06cdd67f9f63c74865d6747a8154f8c","responseTime":78,"status":200,"url":"/devices/59c498d6-ed53-45e7-81d5-464275207d57?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/59c498d6-ed53-45e7-81d5-464275207d57? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.111","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d06cdd67f9f63c74865d6747a8154f8c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI","level":"info","message":"auth send jwt","requestID":"9098e0248bd344affbaef112b96bc2df"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9098e0248bd344affbaef112b96bc2df","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9098e0248bd344affbaef112b96bc2df"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.813171,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/941be8f1-f253-40bd-9785-461db557daf0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9098e0248bd344affbaef112b96bc2df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/941be8f1-f253-40bd-9785-461db557daf0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173729,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9098e0248bd344affbaef112b96bc2df","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F941be8f1-f253-40bd-9785-461db557daf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F941be8f1-f253-40bd-9785-461db557daf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.420634566Z"}]},"request_id":"a7b41c0e-0ddb-4498-a601-f34bb1db906a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.9110746} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9098e0248bd344affbaef112b96bc2df","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b05f0b4a-a198-42a5-ae94-5ebaa8b813a4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.9445982} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"9098e0248bd344affbaef112b96bc2df","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F941be8f1-f253-40bd-9785-461db557daf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F941be8f1-f253-40bd-9785-461db557daf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.420634566Z"}]},"request_id":"6db34708-2960-4295-a249-6ce67f1d6974","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173729.9586208} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9098e0248bd344affbaef112b96bc2df","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9098e0248bd344affbaef112b96bc2df"} gateway-1 | {"time_local":"24/Sep/2024:10:28:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/941be8f1-f253-40bd-9785-461db557daf0? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.073","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9098e0248bd344affbaef112b96bc2df"} device-1 | {"level":"info","message":"PATCH /devices/941be8f1-f253-40bd-9785-461db557daf0? 200 68ms","method":"PATCH","requestID":"9098e0248bd344affbaef112b96bc2df","responseTime":68,"status":200,"url":"/devices/941be8f1-f253-40bd-9785-461db557daf0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI","level":"info","message":"auth send jwt","requestID":"9ffaad3b07ea058451091cd795c09d51"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"9ffaad3b07ea058451091cd795c09d51","responseTime":28,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9ffaad3b07ea058451091cd795c09d51"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926914,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6913524-8007-4a3d-b8eb-e65077e1f722","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9ffaad3b07ea058451091cd795c09d51","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b6913524-8007-4a3d-b8eb-e65077e1f722","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173729,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzcyOX0.gs3GpJj39b9xNbsy8SBs345ssIx31axY4TvOMIY4UPI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9ffaad3b07ea058451091cd795c09d51","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6913524-8007-4a3d-b8eb-e65077e1f722","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6913524-8007-4a3d-b8eb-e65077e1f722","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.594464886Z"}]},"request_id":"66bd898c-d947-4306-9532-0230ea27e6cc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.0083144} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"9ffaad3b07ea058451091cd795c09d51","responseTime":7,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3233d1ee-d4ea-489b-9af3-7cf43202caa9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.0195267} authorization-1 | {"level":"info","message":"POST /relations/update 200 35ms","method":"POST","requestID":"9ffaad3b07ea058451091cd795c09d51","responseTime":35,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6913524-8007-4a3d-b8eb-e65077e1f722","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6913524-8007-4a3d-b8eb-e65077e1f722","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.594464886Z"}]},"request_id":"d83dea3d-27b1-4db7-8aea-474110d5b2f4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.0617511} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9ffaad3b07ea058451091cd795c09d51","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9ffaad3b07ea058451091cd795c09d51"} device-1 | {"level":"info","message":"PATCH /devices/b6913524-8007-4a3d-b8eb-e65077e1f722? 200 72ms","method":"PATCH","requestID":"9ffaad3b07ea058451091cd795c09d51","responseTime":72,"status":200,"url":"/devices/b6913524-8007-4a3d-b8eb-e65077e1f722?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b6913524-8007-4a3d-b8eb-e65077e1f722? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.102","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9ffaad3b07ea058451091cd795c09d51"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg","level":"info","message":"auth send jwt","requestID":"472feafd45364ef4bc9c3cebc70fbe21"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"472feafd45364ef4bc9c3cebc70fbe21"} authentication-1 | {"level":"info","message":"GET /auth 200 34ms","method":"GET","requestID":"472feafd45364ef4bc9c3cebc70fbe21","responseTime":34,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.95968,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59c498d6-ed53-45e7-81d5-464275207d57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"472feafd45364ef4bc9c3cebc70fbe21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/59c498d6-ed53-45e7-81d5-464275207d57","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"472feafd45364ef4bc9c3cebc70fbe21","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59c498d6-ed53-45e7-81d5-464275207d57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F59c498d6-ed53-45e7-81d5-464275207d57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.264196928Z"}]},"request_id":"c2096993-9038-4226-8ea1-e6b71055b9ba","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.1122646} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"472feafd45364ef4bc9c3cebc70fbe21","responseTime":10,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.898067,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.934791,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0a424de-a48d-424a-9474-0da24bd6341a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"472feafd45364ef4bc9c3cebc70fbe21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f0a424de-a48d-424a-9474-0da24bd6341a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"472feafd45364ef4bc9c3cebc70fbe21","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/98d7cf9e-a363-47af-887f-3acc110c60eb","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"472feafd45364ef4bc9c3cebc70fbe21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/98d7cf9e-a363-47af-887f-3acc110c60eb","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"472feafd45364ef4bc9c3cebc70fbe21","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/95c2f52a-f203-4867-8eed-b24cf6a299e3","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"472feafd45364ef4bc9c3cebc70fbe21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/95c2f52a-f203-4867-8eed-b24cf6a299e3","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 20ms","method":"POST","requestID":"472feafd45364ef4bc9c3cebc70fbe21","responseTime":20,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.961976,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.0228,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/941be8f1-f253-40bd-9785-461db557daf0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"472feafd45364ef4bc9c3cebc70fbe21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/941be8f1-f253-40bd-9785-461db557daf0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"472feafd45364ef4bc9c3cebc70fbe21"} device-1 | {"level":"info","message":"GET /devices/59c498d6-ed53-45e7-81d5-464275207d57? 200 103ms","method":"GET","requestID":"472feafd45364ef4bc9c3cebc70fbe21","responseTime":103,"status":200,"url":"/devices/59c498d6-ed53-45e7-81d5-464275207d57?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/59c498d6-ed53-45e7-81d5-464275207d57? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"472feafd45364ef4bc9c3cebc70fbe21"} authorization-1 | {"level":"info","message":"POST /authorize 200 40ms","method":"POST","requestID":"472feafd45364ef4bc9c3cebc70fbe21","responseTime":40,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg","level":"info","message":"auth send jwt","requestID":"cb2551a2325d671df7073dedfaeb3201"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cb2551a2325d671df7073dedfaeb3201","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb2551a2325d671df7073dedfaeb3201"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.821489,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/941be8f1-f253-40bd-9785-461db557daf0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cb2551a2325d671df7073dedfaeb3201","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/941be8f1-f253-40bd-9785-461db557daf0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cb2551a2325d671df7073dedfaeb3201","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F941be8f1-f253-40bd-9785-461db557daf0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F941be8f1-f253-40bd-9785-461db557daf0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.420634566Z"}]},"request_id":"094ae4bc-ef35-424f-b9dd-ea5c30792ed2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.223169} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"cb2551a2325d671df7073dedfaeb3201","responseTime":31,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.884112,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.777915,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0230793c-5176-4245-b260-0e0da21e544f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cb2551a2325d671df7073dedfaeb3201","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/0230793c-5176-4245-b260-0e0da21e544f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"cb2551a2325d671df7073dedfaeb3201","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4a879aff-8f5e-4cd6-85b9-665a1f518b92","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cb2551a2325d671df7073dedfaeb3201","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4a879aff-8f5e-4cd6-85b9-665a1f518b92","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 42ms","method":"POST","requestID":"cb2551a2325d671df7073dedfaeb3201","responseTime":42,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.682382,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/14e2c12b-cce5-471c-b524-4ad796602eb3","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cb2551a2325d671df7073dedfaeb3201","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/14e2c12b-cce5-471c-b524-4ad796602eb3","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 58ms","method":"POST","requestID":"cb2551a2325d671df7073dedfaeb3201","responseTime":58,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.977525,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59c498d6-ed53-45e7-81d5-464275207d57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cb2551a2325d671df7073dedfaeb3201","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/59c498d6-ed53-45e7-81d5-464275207d57","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 36ms","method":"POST","requestID":"cb2551a2325d671df7073dedfaeb3201","responseTime":36,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48480","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48480","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.15896,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":27.614086,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f865e318-718f-4fdb-b1c1-384f40adf375","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cb2551a2325d671df7073dedfaeb3201","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f865e318-718f-4fdb-b1c1-384f40adf375","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 99ms","method":"POST","requestID":"cb2551a2325d671df7073dedfaeb3201","responseTime":99,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6913524-8007-4a3d-b8eb-e65077e1f722","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cb2551a2325d671df7073dedfaeb3201","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b6913524-8007-4a3d-b8eb-e65077e1f722","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb2551a2325d671df7073dedfaeb3201"} device-1 | {"level":"info","message":"GET /devices/941be8f1-f253-40bd-9785-461db557daf0? 200 162ms","method":"GET","requestID":"cb2551a2325d671df7073dedfaeb3201","responseTime":162,"status":200,"url":"/devices/941be8f1-f253-40bd-9785-461db557daf0?"} authorization-1 | {"level":"info","message":"POST /authorize 200 48ms","method":"POST","requestID":"cb2551a2325d671df7073dedfaeb3201","responseTime":48,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:28:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/941be8f1-f253-40bd-9785-461db557daf0? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb2551a2325d671df7073dedfaeb3201"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg","level":"info","message":"auth send jwt","requestID":"036a4b85f372ccc08398de3409d7390f"} authentication-1 | {"level":"info","message":"GET /auth 200 32ms","method":"GET","requestID":"036a4b85f372ccc08398de3409d7390f","responseTime":32,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"036a4b85f372ccc08398de3409d7390f"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.55855,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6913524-8007-4a3d-b8eb-e65077e1f722","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"036a4b85f372ccc08398de3409d7390f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b6913524-8007-4a3d-b8eb-e65077e1f722","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"036a4b85f372ccc08398de3409d7390f","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6913524-8007-4a3d-b8eb-e65077e1f722","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6913524-8007-4a3d-b8eb-e65077e1f722","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:49.594464886Z"}]},"request_id":"29dde96c-a036-4c45-8a1b-93c8808f7199","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.4260569} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"036a4b85f372ccc08398de3409d7390f","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48480","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48480","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.028887,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46528","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.967926,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.706775,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9f6834e-11c4-4976-b572-47fc44a42186","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"036a4b85f372ccc08398de3409d7390f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b9f6834e-11c4-4976-b572-47fc44a42186","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"036a4b85f372ccc08398de3409d7390f","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be90dc45-4838-4577-b5f0-552394f1e34f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"036a4b85f372ccc08398de3409d7390f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/be90dc45-4838-4577-b5f0-552394f1e34f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"036a4b85f372ccc08398de3409d7390f","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3e7b66-1669-4429-ae39-33fc93a7c971","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"036a4b85f372ccc08398de3409d7390f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/df3e7b66-1669-4429-ae39-33fc93a7c971","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 47ms","method":"POST","requestID":"036a4b85f372ccc08398de3409d7390f","responseTime":47,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.352098,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/59c498d6-ed53-45e7-81d5-464275207d57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"036a4b85f372ccc08398de3409d7390f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/59c498d6-ed53-45e7-81d5-464275207d57","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"036a4b85f372ccc08398de3409d7390f"} device-1 | {"level":"info","message":"GET /devices/b6913524-8007-4a3d-b8eb-e65077e1f722? 200 77ms","method":"GET","requestID":"036a4b85f372ccc08398de3409d7390f","responseTime":77,"status":200,"url":"/devices/b6913524-8007-4a3d-b8eb-e65077e1f722?"} authorization-1 | {"level":"info","message":"POST /authorize 200 45ms","method":"POST","requestID":"036a4b85f372ccc08398de3409d7390f","responseTime":45,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:28:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b6913524-8007-4a3d-b8eb-e65077e1f722? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.112","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"036a4b85f372ccc08398de3409d7390f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg","level":"info","message":"auth send jwt","requestID":"02f66800e8a15dd6e94bcf129021497e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"02f66800e8a15dd6e94bcf129021497e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"02f66800e8a15dd6e94bcf129021497e"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.955692,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"02f66800e8a15dd6e94bcf129021497e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"02f66800e8a15dd6e94bcf129021497e","responseTime":14,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"879bc441-0145-4519-b820-b21f3106f2d7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.6501713} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"02f66800e8a15dd6e94bcf129021497e","responseTime":7,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9eb08df9-b53c-4016-b0e6-37eebc62a503","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.6844404} authorization-1 | {"level":"info","message":"POST /relations/update 200 32ms","method":"POST","requestID":"02f66800e8a15dd6e94bcf129021497e","responseTime":32,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"fada1833-45f6-4fe1-83b3-1ea023a8143c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.8067691} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d8ae07e9-f212-45ee-b4c1-ac9db55b2092","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.8080387} authorization-1 | {"level":"info","message":"POST /relations/update 200 128ms","method":"POST","requestID":"02f66800e8a15dd6e94bcf129021497e","responseTime":128,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:50.806746652Z"}]},"request_id":"dbb106fc-9e2f-4d81-bc4d-dfa9039fb0f4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.8173854} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"02f66800e8a15dd6e94bcf129021497e"} device-1 | {"level":"info","message":"POST /devices? 201 307ms","method":"POST","requestID":"02f66800e8a15dd6e94bcf129021497e","responseTime":307,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"284","request_time":"0.313","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"02f66800e8a15dd6e94bcf129021497e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg","level":"info","message":"auth send jwt","requestID":"613ca33b194bfcaa2b19d0fb43d1cd47"} device-1 | {"level":"info","message":"postDevices called","requestID":"613ca33b194bfcaa2b19d0fb43d1cd47"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"613ca33b194bfcaa2b19d0fb43d1cd47","responseTime":9,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 26ms","method":"POST","requestID":"02f66800e8a15dd6e94bcf129021497e","responseTime":26,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.920432,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"613ca33b194bfcaa2b19d0fb43d1cd47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173730,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMH0.t_ndypeVqNTxlpNFfmcrCLAU3DcjmPeYNLPIlfpTZCg"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"613ca33b194bfcaa2b19d0fb43d1cd47","responseTime":35,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8f920b4-909c-4693-bd37-2e7a1f3258fa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5ba9c676-d5d0-4c95-852b-a9bf6063fe1d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173730.9537559} authorization-1 | {"level":"info","message":"POST /relations/query 200 45ms","method":"POST","requestID":"613ca33b194bfcaa2b19d0fb43d1cd47","responseTime":45,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dde5a6ac-fc0a-42f7-858b-1ed25f5e772f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173731.0042279} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"613ca33b194bfcaa2b19d0fb43d1cd47","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8f920b4-909c-4693-bd37-2e7a1f3258fa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"d7a03802-7474-4bbf-aff8-7c0b99a244f6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173731.0785756} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01ae8d89-e259-49db-ac44-f18fed6f2cdd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173731.1040986} authorization-1 | {"level":"info","message":"POST /relations/update 200 111ms","method":"POST","requestID":"613ca33b194bfcaa2b19d0fb43d1cd47","responseTime":111,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8f920b4-909c-4693-bd37-2e7a1f3258fa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8f920b4-909c-4693-bd37-2e7a1f3258fa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:51.078552158Z"}]},"request_id":"b68a6b76-1abe-4e99-bbe8-2f80438baff9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173731.1203756} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"613ca33b194bfcaa2b19d0fb43d1cd47"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"613ca33b194bfcaa2b19d0fb43d1cd47","responseTime":7,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:28:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"545","request_time":"0.295","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"613ca33b194bfcaa2b19d0fb43d1cd47"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMX0.D8DLjJQvDK5bRcSvsY-wdWdiJSwj2aWoANjROBTXHTg","level":"info","message":"auth send jwt","requestID":"251e3a7c92588ef91773282526442de0"} device-1 | {"level":"info","message":"POST /devices? 201 294ms","method":"POST","requestID":"613ca33b194bfcaa2b19d0fb43d1cd47","responseTime":294,"status":201,"url":"/devices?"} device-1 | {"level":"info","message":"postDevices called","requestID":"251e3a7c92588ef91773282526442de0"} authentication-1 | {"level":"info","message":"GET /auth 200 10ms","method":"GET","requestID":"251e3a7c92588ef91773282526442de0","responseTime":10,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:51Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.19858,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"251e3a7c92588ef91773282526442de0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173731,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczMX0.D8DLjJQvDK5bRcSvsY-wdWdiJSwj2aWoANjROBTXHTg"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"251e3a7c92588ef91773282526442de0","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"61f99c23-9392-42b5-8970-0336cfdfc9fa","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173731.188006} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"251e3a7c92588ef91773282526442de0","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1e32e23f-051f-4836-9150-3269a6940271","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173731.2461245} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"251e3a7c92588ef91773282526442de0","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"58736785-4e8c-4482-8953-3bdb2306b88a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173731.2966137} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a269a1f-7747-4314-8e93-f8e1e2da2566","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173731.2971807} authorization-1 | {"level":"info","message":"POST /relations/update 200 54ms","method":"POST","requestID":"251e3a7c92588ef91773282526442de0","responseTime":54,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:51.296592086Z"}]},"request_id":"b5283f6e-c8c8-424e-9d76-f7f334462654","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173731.304086} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"251e3a7c92588ef91773282526442de0","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"251e3a7c92588ef91773282526442de0"} device-1 | {"level":"info","message":"POST /devices? 201 183ms","method":"POST","requestID":"251e3a7c92588ef91773282526442de0","responseTime":183,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.186","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"251e3a7c92588ef91773282526442de0"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"46335061c6ff8a80baf5458b7fe4741a","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":"46335061c6ff8a80baf5458b7fe4741a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:28:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/28021331-8fcd-4344-87be-2d42d653f55c/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":"46335061c6ff8a80baf5458b7fe4741a"} device-1 | {"level":"info","message":"OPTIONS /devices/28021331-8fcd-4344-87be-2d42d653f55c/websocket 200 1ms","method":"OPTIONS","requestID":"46335061c6ff8a80baf5458b7fe4741a","responseTime":1,"status":200,"url":"/devices/28021331-8fcd-4344-87be-2d42d653f55c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4","level":"info","message":"auth send jwt","requestID":"b963577c89f443709c2fa6f24339d294"} authentication-1 | {"level":"info","message":"GET /auth 200 36ms","method":"GET","requestID":"b963577c89f443709c2fa6f24339d294","responseTime":36,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b963577c89f443709c2fa6f24339d294"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:54Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.004938,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b963577c89f443709c2fa6f24339d294","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173734,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"b963577c89f443709c2fa6f24339d294","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"62b398f241c50de042653efa447cbb9a","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":"62b398f241c50de042653efa447cbb9a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b963577c89f443709c2fa6f24339d294"} gateway-1 | {"time_local":"24/Sep/2024:10:28:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/28021331-8fcd-4344-87be-2d42d653f55c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.099","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":"b963577c89f443709c2fa6f24339d294"} device-1 | {"level":"info","message":"POST /devices/28021331-8fcd-4344-87be-2d42d653f55c/websocket 200 62ms","method":"POST","requestID":"b963577c89f443709c2fa6f24339d294","responseTime":62,"status":200,"url":"/devices/28021331-8fcd-4344-87be-2d42d653f55c/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:28:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","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":"62b398f241c50de042653efa447cbb9a"} device-1 | {"level":"info","message":"OPTIONS /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/websocket 200 36ms","method":"OPTIONS","requestID":"62b398f241c50de042653efa447cbb9a","responseTime":36,"status":200,"url":"/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4","level":"info","message":"auth send jwt","requestID":"4cf1a80b877b4b0e816c5e85b4a897b6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4cf1a80b877b4b0e816c5e85b4a897b6"} authentication-1 | {"level":"info","message":"GET /auth 200 65ms","method":"GET","requestID":"4cf1a80b877b4b0e816c5e85b4a897b6","responseTime":65,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:54Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.991377,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"4cf1a80b877b4b0e816c5e85b4a897b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173734,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"4cf1a80b877b4b0e816c5e85b4a897b6","responseTime":30,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4cf1a80b877b4b0e816c5e85b4a897b6"} device-1 | {"level":"info","message":"POST /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/websocket 200 83ms","method":"POST","requestID":"4cf1a80b877b4b0e816c5e85b4a897b6","responseTime":83,"status":200,"url":"/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:28:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.161","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":"4cf1a80b877b4b0e816c5e85b4a897b6"} device-1 | {"level":"info","message":"device 'http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4","level":"info","message":"auth send jwt","requestID":"eace7be3dc99d8bc62f7bca6ec75c871"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"eace7be3dc99d8bc62f7bca6ec75c871","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eace7be3dc99d8bc62f7bca6ec75c871"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:54Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.000559,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"eace7be3dc99d8bc62f7bca6ec75c871","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173734,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4"} authorization-1 | {"level":"info","message":"POST /authorize 200 47ms","method":"POST","requestID":"eace7be3dc99d8bc62f7bca6ec75c871","responseTime":47,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:51.296592086Z"}]},"request_id":"d234bd2e-c1a5-4289-970c-390329dd6a7c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173734.928355} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"eace7be3dc99d8bc62f7bca6ec75c871","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eace7be3dc99d8bc62f7bca6ec75c871"} device-1 | {"level":"info","message":"GET /devices/28021331-8fcd-4344-87be-2d42d653f55c? 200 63ms","method":"GET","requestID":"eace7be3dc99d8bc62f7bca6ec75c871","responseTime":63,"status":200,"url":"/devices/28021331-8fcd-4344-87be-2d42d653f55c?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/28021331-8fcd-4344-87be-2d42d653f55c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.108","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eace7be3dc99d8bc62f7bca6ec75c871"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4","level":"info","message":"auth send jwt","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} authentication-1 | {"level":"info","message":"GET /auth 200 32ms","method":"GET","requestID":"6c5c039a838c83334c17c3f5cfb0b223","responseTime":32,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:54Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.973417,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"6c5c039a838c83334c17c3f5cfb0b223","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173734,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"6c5c039a838c83334c17c3f5cfb0b223","responseTime":33,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Attempting to run experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Attempting to book experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Successfully booked experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ccfb5580-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ccfba3a0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.954544,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8f920b4-909c-4693-bd37-2e7a1f3258fa","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ccfb5580-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/e8f920b4-909c-4693-bd37-2e7a1f3258fa","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173734,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"ccfb5580-7a5f-11ef-8bac-49f2f0d74a99","responseTime":30,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893496,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ccfba3a0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173734,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"ccfba3a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":30,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8f920b4-909c-4693-bd37-2e7a1f3258fa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8f920b4-909c-4693-bd37-2e7a1f3258fa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:51.078552158Z"}]},"request_id":"c46e100a-1dea-424d-9eda-a242e28f490a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.165378} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"ccfb5580-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:51.296592086Z"}]},"request_id":"7bf3d38f-7a44-4754-a421-e45d7370dd5f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.1743877} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ccfba3a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.85876,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ccfba3a0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ccfb5580-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173734,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4"} device-1 | {"level":"info","message":"GET /devices/28021331-8fcd-4344-87be-2d42d653f55c? 200 84ms","method":"GET","requestID":"ccfba3a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":84,"status":200,"url":"/devices/28021331-8fcd-4344-87be-2d42d653f55c?"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ccfb5580-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ccfb5580-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/e8f920b4-909c-4693-bd37-2e7a1f3258fa? 200 88ms","method":"GET","requestID":"ccfb5580-7a5f-11ef-8bac-49f2f0d74a99","responseTime":88,"status":200,"url":"/devices/e8f920b4-909c-4693-bd37-2e7a1f3258fa?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Setting up experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Successfully set up experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cd25e7f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cd265d20-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.933955,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cd26d250-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Successfully running experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cd25e7f0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173734,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"cd25e7f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.012122,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cd265d20-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173734,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4"} authorization-1 | {"level":"info","message":"POST /authorize 200 83ms","method":"POST","requestID":"cd265d20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":83,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":39.190065,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fcfeaf2a-44a1-46f2-a41b-2fc882630516","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.4612675} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cd26d250-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 82ms","method":"POST","requestID":"cd26d250-7a5f-11ef-8bac-49f2f0d74a99","responseTime":82,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cd26d250-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/signaling 200 98ms","method":"POST","requestID":"cd26d250-7a5f-11ef-8bac-49f2f0d74a99","responseTime":98,"status":200,"url":"/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cd35ed80-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:51.296592086Z"}]},"request_id":"b83f364d-96e3-46cc-b671-90d7900f1ffe","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.5117848} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:50.806746652Z"}]},"request_id":"1e6ba5de-70b0-466b-8da2-7a1290a9fd2b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.5154417} authorization-1 | {"level":"info","message":"POST /relations/query 200 41ms","method":"POST","requestID":"cd265d20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 33ms","method":"POST","requestID":"cd25e7f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cd265d20-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/28021331-8fcd-4344-87be-2d42d653f55c? 200 143ms","method":"GET","requestID":"cd265d20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":143,"status":200,"url":"/devices/28021331-8fcd-4344-87be-2d42d653f55c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cd25e7f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9? 200 148ms","method":"GET","requestID":"cd25e7f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":148,"status":200,"url":"/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9?"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.061911,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cd3d1970-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0983ef06-0c71-409c-8bae-34208c950e0b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.5557475} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cd35ed80-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 46ms","method":"POST","requestID":"cd35ed80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fda80d45f-40e8-4782-b2f5-16cce686494f#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fda80d45f-40e8-4782-b2f5-16cce686494f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"2783a0fb-bf94-4012-9b86-b5d5c14ddca0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.565831} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16b114da-a2f3-4907-a241-58b01752c4e7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.5664256} authorization-1 | {"level":"info","message":"POST /relations/update 200 101ms","method":"POST","requestID":"6c5c039a838c83334c17c3f5cfb0b223","responseTime":101,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a60d0a84-97e7-4d60-b08b-333f0b2fc09e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.5998132} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.837363,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cd3d1970-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","object_type":"device","rebac_allow":false,"scope_allow":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":"cd3d1970-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"level":"info","message":"POST /experiments? 201 641ms","method":"POST","requestID":"6c5c039a838c83334c17c3f5cfb0b223","responseTime":641,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.681","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cd35ed80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/28021331-8fcd-4344-87be-2d42d653f55c/signaling 200 111ms","method":"POST","requestID":"cd35ed80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":111,"status":200,"url":"/devices/28021331-8fcd-4344-87be-2d42d653f55c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNX0.VCf4hk7OgE4C2VOxSnOIYcU2rr5f0QoPApKZhc2oz8c","level":"info","message":"auth send jwt","requestID":"67f27a4c210ec1b1615e3c6a5f63f974"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"67f27a4c210ec1b1615e3c6a5f63f974","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cd3d1970-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/signaling 200 71ms","method":"POST","requestID":"cd3d1970-7a5f-11ef-8bac-49f2f0d74a99","responseTime":71,"status":200,"url":"/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cd488b20-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"67f27a4c210ec1b1615e3c6a5f63f974"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46538","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.280457,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14e05c7a-3c15-49d1-8a58-695806e473ba","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.669469} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cd488b20-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 17ms","method":"POST","requestID":"cd488b20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.068878,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"67f27a4c210ec1b1615e3c6a5f63f974","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173735,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNX0.VCf4hk7OgE4C2VOxSnOIYcU2rr5f0QoPApKZhc2oz8c"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"67f27a4c210ec1b1615e3c6a5f63f974","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cd488b20-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Building connection plan","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"a854518c-acd3-4b36-bc87-5f950dafc8a3"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"ac9a2b7f-2685-4452-96ac-9be6ac224c7d"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"b21ae028-0153-48cf-920c-13637b1243a4"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} device-1 | {"level":"info","message":"POST /devices/28021331-8fcd-4344-87be-2d42d653f55c/signaling 200 83ms","method":"POST","requestID":"cd488b20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":83,"status":200,"url":"/devices/28021331-8fcd-4344-87be-2d42d653f55c/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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:50.806746652Z"}]},"request_id":"ca2e3496-50ad-49d3-aba9-4358b9e82d21","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.7225308} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67f27a4c210ec1b1615e3c6a5f63f974","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"cd56bbf0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.896315,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cd56bbf0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173734,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNH0.oAdQ9iS5uJxwGGz4Idv8rawGGOKUQ5B6XsXXBUL0xI4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cd56bbf0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"67f27a4c210ec1b1615e3c6a5f63f974"} device-1 | {"level":"info","message":"GET /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9? 200 103ms","method":"GET","requestID":"67f27a4c210ec1b1615e3c6a5f63f974","responseTime":103,"status":200,"url":"/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9? HTTP/1.1","status": "200","body_bytes_sent":"283","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"67f27a4c210ec1b1615e3c6a5f63f974"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNX0.VCf4hk7OgE4C2VOxSnOIYcU2rr5f0QoPApKZhc2oz8c","level":"info","message":"auth send jwt","requestID":"f3337cb25485613b8eebcb49743b0cb6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f3337cb25485613b8eebcb49743b0cb6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3337cb25485613b8eebcb49743b0cb6"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"313609e8-b73b-4a67-8e47-57d649136886","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.7791243} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"73a137ce-d67e-4548-a053-6018a33e94fc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.7801924} authorization-1 | {"level":"info","message":"POST /relations/update 200 45ms","method":"POST","requestID":"cd56bbf0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.878787,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f3337cb25485613b8eebcb49743b0cb6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173735,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNX0.VCf4hk7OgE4C2VOxSnOIYcU2rr5f0QoPApKZhc2oz8c"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f3337cb25485613b8eebcb49743b0cb6","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:51.296592086Z"}]},"request_id":"9f9db82b-b274-4f31-ba8e-3ca87c26dd07","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173735.840218} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"cd56bbf0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"cd56bbf0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c'","requestID":"cd56bbf0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c'","requestID":"cd56bbf0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"cd56bbf0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 155ms","method":"POST","requestID":"cd56bbf0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":155,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} authorization-1 | {"level":"info","message":"POST /relations/query 200 47ms","method":"POST","requestID":"f3337cb25485613b8eebcb49743b0cb6","responseTime":47,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3337cb25485613b8eebcb49743b0cb6"} device-1 | {"level":"info","message":"GET /devices/28021331-8fcd-4344-87be-2d42d653f55c? 200 105ms","method":"GET","requestID":"f3337cb25485613b8eebcb49743b0cb6","responseTime":105,"status":200,"url":"/devices/28021331-8fcd-4344-87be-2d42d653f55c?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/28021331-8fcd-4344-87be-2d42d653f55c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.111","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f3337cb25485613b8eebcb49743b0cb6"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"cd56bbf0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c","device":"28021331-8fcd-4344-87be-2d42d653f55c","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/2f436cd1-7eef-470e-bb6f-5d681e91a83c","device":"430e0aad-25b5-419b-99b8-d4bee68db4d9","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":true} device-1 | {"device":"430e0aad-25b5-419b-99b8-d4bee68db4d9","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"430e0aad-25b5-419b-99b8-d4bee68db4d9","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"28021331-8fcd-4344-87be-2d42d653f55c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"28021331-8fcd-4344-87be-2d42d653f55c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6c5c039a838c83334c17c3f5cfb0b223"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cd8f7f30-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":28.417597,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65e55e8e-5cdc-4d00-bf03-7b3cce63cc54","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173736.1302772} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cd8f7f30-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"cd8f7f30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cd8f7f30-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/signaling 200 55ms","method":"POST","requestID":"cd8f7f30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":55,"status":200,"url":"/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cd9c7780-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.692454,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"25b0077e-61ad-4f4f-b6e7-ec6bbd540a47","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173736.1903872} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cd9c7780-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","object_type":"device","rebac_allow":false,"scope_allow":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":"cd9c7780-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cd9c7780-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/28021331-8fcd-4344-87be-2d42d653f55c/signaling 200 17ms","method":"POST","requestID":"cd9c7780-7a5f-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/devices/28021331-8fcd-4344-87be-2d42d653f55c/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 2180018124554244757 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:R4BY\r\na=ice-pwd:bnvTJDeLFZUFFmCjN6qbVMmi\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D3:D3:F6:74:43:DA:22:AD:E8:67:77:4C:7B:A3:F1:3A:C4:AA:E3:A0:3E:AB:62:C4:9F:37:84:48:D8:CB:07:AA\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"430e0aad-25b5-419b-99b8-d4bee68db4d9","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 4219186511160828416 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:o5Nj\r\na=ice-pwd:ToPr7ZCTRJGlUU/3HBKoRjUi\r\na=ice-options:trickle\r\na=fingerprint:sha-256 FC:73:2F:D1:15:E4:F4:94:93:94:3E:3C:19:30:C6:26:99:9A:13:7A:6B:CD:27:21:0F:54:2A:07:18:6B:44:4E\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"28021331-8fcd-4344-87be-2d42d653f55c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:223001064 1 udp 2113937151 98b55f4a-28c3-413b-8ab8-4bdf78d929ad.local 47184 typ host generation 0 ufrag o5Nj network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"28021331-8fcd-4344-87be-2d42d653f55c","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/28021331-8fcd-4344-87be-2d42d653f55c'"} device-1 | {"content":{"candidate":"candidate:2305282967 1 udp 1677729535 141.24.211.56 47184 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag o5Nj network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"28021331-8fcd-4344-87be-2d42d653f55c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2906818639 1 udp 2113937151 7da39021-6639-4250-89ce-43cd27c2f5aa.local 57313 typ host generation 0 ufrag R4BY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"430e0aad-25b5-419b-99b8-d4bee68db4d9","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:695198256 1 udp 1677729535 141.24.211.56 57313 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag R4BY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"430e0aad-25b5-419b-99b8-d4bee68db4d9","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/430e0aad-25b5-419b-99b8-d4bee68db4d9'"} device-1 | {"content":{"candidate":"candidate:2053266875 1 udp 33562623 141.24.210.113 51450 typ relay raddr 141.24.211.56 rport 57313 generation 0 ufrag R4BY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"430e0aad-25b5-419b-99b8-d4bee68db4d9","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/430e0aad-25b5-419b-99b8-d4bee68db4d9'"} device-1 | {"device":"28021331-8fcd-4344-87be-2d42d653f55c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"430e0aad-25b5-419b-99b8-d4bee68db4d9","deviceName":"Internal Test Device","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/2f436cd1-7eef-470e-bb6f-5d681e91a83c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f436cd1-7eef-470e-bb6f-5d681e91a83c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"430e0aad-25b5-419b-99b8-d4bee68db4d9","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"28021331-8fcd-4344-87be-2d42d653f55c","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":"connecting","url":"http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c"}}},"level":"info","message":"received a callback","requestID":"e6470211c0948d3479bafdcd3e846688"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e6470211c0948d3479bafdcd3e846688","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":"e6470211c0948d3479bafdcd3e846688","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"e6470211c0948d3479bafdcd3e846688","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:28:56 +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.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"e6470211c0948d3479bafdcd3e846688"} device-1 | {"data":{"peerconnection":"2f436cd1-7eef-470e-bb6f-5d681e91a83c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"28021331-8fcd-4344-87be-2d42d653f55c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"2f436cd1-7eef-470e-bb6f-5d681e91a83c","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"430e0aad-25b5-419b-99b8-d4bee68db4d9","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f436cd1-7eef-470e-bb6f-5d681e91a83c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5e5e5f23aa118cf412a83229077f0e52","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":"5e5e5f23aa118cf412a83229077f0e52","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/28021331-8fcd-4344-87be-2d42d653f55c"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c"}}},"level":"info","message":"received a callback","requestID":"5e5e5f23aa118cf412a83229077f0e52"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:56Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"cdd3b420-7a5f-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNn0.Ct_yofxKK3DpT7oU2K8i7eXcXVOvxjY_WbCX7wdch-8","level":"info","message":"auth send jwt","requestID":"dcd7e8b43465fd2d4e8752bbc98d970c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dcd7e8b43465fd2d4e8752bbc98d970c","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f436cd1-7eef-470e-bb6f-5d681e91a83c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0fd83a76-991b-4ad8-83c9-dfdcf0846f67","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173736.5516162} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.200654,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cdd3b420-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c","object_type":"peerconnection","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":"Handling GET request on endpoint /experiments/da80d45f-40e8-4782-b2f5-16cce686494f","requestID":"dcd7e8b43465fd2d4e8752bbc98d970c"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"cdd3b420-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"device":"28021331-8fcd-4344-87be-2d42d653f55c","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"cdd3b420-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c 200 18ms","method":"GET","requestID":"cdd3b420-7a5f-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.930743,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"dcd7e8b43465fd2d4e8752bbc98d970c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173736,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNn0.Ct_yofxKK3DpT7oU2K8i7eXcXVOvxjY_WbCX7wdch-8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"dcd7e8b43465fd2d4e8752bbc98d970c","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/da80d45f-40e8-4782-b2f5-16cce686494f","requestID":"dcd7e8b43465fd2d4e8752bbc98d970c"} experiment-1 | {"level":"info","message":"GET /experiments/da80d45f-40e8-4782-b2f5-16cce686494f 200 67ms","method":"GET","requestID":"dcd7e8b43465fd2d4e8752bbc98d970c","responseTime":67,"status":200,"url":"/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"} gateway-1 | {"time_local":"24/Sep/2024:10:28:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/da80d45f-40e8-4782-b2f5-16cce686494f HTTP/1.1","status": "200","body_bytes_sent":"878","request_time":"0.079","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dcd7e8b43465fd2d4e8752bbc98d970c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"5e5e5f23aa118cf412a83229077f0e52","responseTime":134,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cde2a840-7a5f-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:28:56 +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.142","http_referrer":"","http_user_agent":"node-fetch","requestID":"5e5e5f23aa118cf412a83229077f0e52"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.166608,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"477c6c15-6374-4d33-9014-41069419c054","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173736.64994} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cde2a840-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","object_type":"device","rebac_allow":false,"scope_allow":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":"cde2a840-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cde2a840-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/28021331-8fcd-4344-87be-2d42d653f55c/signaling 200 44ms","method":"POST","requestID":"cde2a840-7a5f-11ef-8bac-49f2f0d74a99","responseTime":44,"status":200,"url":"/devices/28021331-8fcd-4344-87be-2d42d653f55c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cde98610-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.189432,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c786d7a9-1547-4933-8cbf-9200ad89f344","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173736.695121} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cde98610-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","object_type":"device","rebac_allow":false,"scope_allow":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":"cde98610-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cde98610-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/signaling 200 18ms","method":"POST","requestID":"cde98610-7a5f-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNn0.Ct_yofxKK3DpT7oU2K8i7eXcXVOvxjY_WbCX7wdch-8","level":"info","message":"auth send jwt","requestID":"094684283d4a0001cdff42a5aad647ee"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"094684283d4a0001cdff42a5aad647ee","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/da80d45f-40e8-4782-b2f5-16cce686494f","requestID":"094684283d4a0001cdff42a5aad647ee"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.924969,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"094684283d4a0001cdff42a5aad647ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173736,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNn0.Ct_yofxKK3DpT7oU2K8i7eXcXVOvxjY_WbCX7wdch-8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"094684283d4a0001cdff42a5aad647ee","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/da80d45f-40e8-4782-b2f5-16cce686494f","requestID":"094684283d4a0001cdff42a5aad647ee"} gateway-1 | {"time_local":"24/Sep/2024:10:28:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/da80d45f-40e8-4782-b2f5-16cce686494f HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"094684283d4a0001cdff42a5aad647ee"} experiment-1 | {"level":"info","message":"GET /experiments/da80d45f-40e8-4782-b2f5-16cce686494f 200 60ms","method":"GET","requestID":"094684283d4a0001cdff42a5aad647ee","responseTime":60,"status":200,"url":"/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNn0.Ct_yofxKK3DpT7oU2K8i7eXcXVOvxjY_WbCX7wdch-8","level":"info","message":"auth send jwt","requestID":"cb74512b0a6c3b7bb5717c5c49acfc6a"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/da80d45f-40e8-4782-b2f5-16cce686494f","requestID":"cb74512b0a6c3b7bb5717c5c49acfc6a"} authentication-1 | {"level":"info","message":"GET /auth 200 19ms","method":"GET","requestID":"cb74512b0a6c3b7bb5717c5c49acfc6a","responseTime":19,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":3.26636,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cb74512b0a6c3b7bb5717c5c49acfc6a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173736,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNn0.Ct_yofxKK3DpT7oU2K8i7eXcXVOvxjY_WbCX7wdch-8"} authorization-1 | {"level":"info","message":"POST /authorize 200 47ms","method":"POST","requestID":"cb74512b0a6c3b7bb5717c5c49acfc6a","responseTime":47,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Attempting to finish experiment","requestID":"cb74512b0a6c3b7bb5717c5c49acfc6a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ce0683f0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.861133,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ce0683f0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173736,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczNn0.Ct_yofxKK3DpT7oU2K8i7eXcXVOvxjY_WbCX7wdch-8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ce0683f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c","device":"430e0aad-25b5-419b-99b8-d4bee68db4d9","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c","device":"28021331-8fcd-4344-87be-2d42d653f55c","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/2f436cd1-7eef-470e-bb6f-5d681e91a83c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f436cd1-7eef-470e-bb6f-5d681e91a83c","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a94c09e72efcdbb0d17feee022902ccf","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":"a94c09e72efcdbb0d17feee022902ccf","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f436cd1-7eef-470e-bb6f-5d681e91a83c': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f436cd1-7eef-470e-bb6f-5d681e91a83c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"0818819b-455b-45cd-a191-4abfcd6f8314","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173736.938523} 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/28021331-8fcd-4344-87be-2d42d653f55c"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c"}}},"level":"info","message":"received a callback","requestID":"a94c09e72efcdbb0d17feee022902ccf"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18cd26db-f2e7-41f4-adb1-a6bdea7ca2b4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173736.9402947} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"ce0683f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c83d82f2faf65840a385ae4ea8f04b77","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":"c83d82f2faf65840a385ae4ea8f04b77","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":"connected","url":"http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c"}}},"level":"info","message":"received a callback","requestID":"c83d82f2faf65840a385ae4ea8f04b77"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ce0683f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c 204 122ms","method":"DELETE","requestID":"ce0683f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":123,"status":204,"url":"/peerconnections/2f436cd1-7eef-470e-bb6f-5d681e91a83c"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"},"level":"info","message":"Successfully finished experiment","requestID":"cb74512b0a6c3b7bb5717c5c49acfc6a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce21fb30-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:57Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28021331-8fcd-4344-87be-2d42d653f55c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8d30e9dd-2732-4266-b01f-f820b56a8131","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.0655355} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fda80d45f-40e8-4782-b2f5-16cce686494f': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fda80d45f-40e8-4782-b2f5-16cce686494f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"a42d81ec-1737-4d1c-8be3-ec77e8ebc99a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.068886} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.291204,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ce21fb30-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c","object_type":"device","rebac_allow":false,"scope_allow":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":"ce21fb30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":13,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d087b0f3-17dc-43c4-8875-0e5c2917107a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.0696592} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce21fb30-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/28021331-8fcd-4344-87be-2d42d653f55c/signaling 200 19ms","method":"POST","requestID":"ce21fb30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":19,"status":200,"url":"/devices/28021331-8fcd-4344-87be-2d42d653f55c/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 53ms","method":"POST","requestID":"cb74512b0a6c3b7bb5717c5c49acfc6a","responseTime":53,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce297540-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:57Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F430e0aad-25b5-419b-99b8-d4bee68db4d9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"00b62800-b3bc-4b80-a52e-e7e1ca12c1fe","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.1155677} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.610282,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ce297540-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9","object_type":"device","rebac_allow":false,"scope_allow":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":"ce297540-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce297540-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/signaling 200 18ms","method":"POST","requestID":"ce297540-7a5f-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/da80d45f-40e8-4782-b2f5-16cce686494f","requestID":"cb74512b0a6c3b7bb5717c5c49acfc6a"} gateway-1 | {"time_local":"24/Sep/2024:10:28:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/da80d45f-40e8-4782-b2f5-16cce686494f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.438","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb74512b0a6c3b7bb5717c5c49acfc6a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczN30.pV8bnON6-W3loK3uXfxrvO1tAGed9t3Jifn-HnOmgC0","level":"info","message":"auth send jwt","requestID":"e6d0dd1bedf61cd1758f262da69a0ca2"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"e6d0dd1bedf61cd1758f262da69a0ca2","responseTime":28,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"DELETE /experiments/da80d45f-40e8-4782-b2f5-16cce686494f 204 480ms","method":"DELETE","requestID":"cb74512b0a6c3b7bb5717c5c49acfc6a","responseTime":480,"status":204,"url":"/experiments/da80d45f-40e8-4782-b2f5-16cce686494f"} device-1 | {"level":"info","message":"postDevices called","requestID":"e6d0dd1bedf61cd1758f262da69a0ca2"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:57Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 363ms","method":"POST","requestID":"a94c09e72efcdbb0d17feee022902ccf","responseTime":363,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":13.4264,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e6d0dd1bedf61cd1758f262da69a0ca2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173737,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczN30.pV8bnON6-W3loK3uXfxrvO1tAGed9t3Jifn-HnOmgC0"} authorization-1 | {"level":"info","message":"POST /authorize 200 20ms","method":"POST","requestID":"e6d0dd1bedf61cd1758f262da69a0ca2","responseTime":20,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:28:57 +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.361","http_referrer":"","http_user_agent":"node-fetch","requestID":"c83d82f2faf65840a385ae4ea8f04b77"} gateway-1 | {"time_local":"24/Sep/2024:10:28:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2990","request_time":"2.772","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":"243e4fff0a4a2cd8073ecc12383e3633"} gateway-1 | {"time_local":"24/Sep/2024:10:28:57 +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.371","http_referrer":"","http_user_agent":"node-fetch","requestID":"a94c09e72efcdbb0d17feee022902ccf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 357ms","method":"POST","requestID":"c83d82f2faf65840a385ae4ea8f04b77","responseTime":357,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/28021331-8fcd-4344-87be-2d42d653f55c' closed"} gateway-1 | {"time_local":"24/Sep/2024:10:28:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2650","request_time":"2.612","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":"6f1a5bc2e251e5015ae35bb6cd1dfce2"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3a9dfc2c-fa04-4f61-8d3b-26656bdfe8f9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.370115} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e6d0dd1bedf61cd1758f262da69a0ca2","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1bda8711-34cd-4c80-a0e5-c31d6bf2577a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.408473} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e6d0dd1bedf61cd1758f262da69a0ca2","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/430e0aad-25b5-419b-99b8-d4bee68db4d9' closed"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"c1d4e8a0-e737-41a4-be3c-2080ca750bbc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.4388692} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6766c766-0a9d-475a-8938-16608c27c67b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.4644496} authorization-1 | {"level":"info","message":"POST /relations/update 200 58ms","method":"POST","requestID":"e6d0dd1bedf61cd1758f262da69a0ca2","responseTime":58,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.438845755Z"}]},"request_id":"2b4d2c1c-20f4-4f20-9896-0a8b771de2d6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.4724462} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e6d0dd1bedf61cd1758f262da69a0ca2"} gateway-1 | {"time_local":"24/Sep/2024:10:28:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.220","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e6d0dd1bedf61cd1758f262da69a0ca2"} device-1 | {"level":"info","message":"POST /devices? 201 184ms","method":"POST","requestID":"e6d0dd1bedf61cd1758f262da69a0ca2","responseTime":184,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"e6d0dd1bedf61cd1758f262da69a0ca2","responseTime":7,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczN30.pV8bnON6-W3loK3uXfxrvO1tAGed9t3Jifn-HnOmgC0","level":"info","message":"auth send jwt","requestID":"73df60f7075df1c0fbf8081940a5a079"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"73df60f7075df1c0fbf8081940a5a079","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"73df60f7075df1c0fbf8081940a5a079"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:57Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.86334,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"73df60f7075df1c0fbf8081940a5a079","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173737,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczN30.pV8bnON6-W3loK3uXfxrvO1tAGed9t3Jifn-HnOmgC0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73df60f7075df1c0fbf8081940a5a079","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5a68c044-d324-4e72-ac12-c4b854d9207d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.5371408} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"73df60f7075df1c0fbf8081940a5a079","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c514bad0-acb0-40fa-9cc5-70019d410347","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.5445955} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"73df60f7075df1c0fbf8081940a5a079","responseTime":7,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"468a6856-a537-44e3-a7b6-963566bd07ed","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.559749} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"7a01332a-ae43-4897-a20e-ce434aeae898","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.5854988} authorization-1 | {"level":"info","message":"POST /relations/update 200 45ms","method":"POST","requestID":"73df60f7075df1c0fbf8081940a5a079","responseTime":45,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.585475300Z"}]},"request_id":"8b0d564c-4e00-4c85-a593-097170cc1fa5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173737.594046} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"73df60f7075df1c0fbf8081940a5a079"} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"73df60f7075df1c0fbf8081940a5a079","responseTime":14,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices? 201 120ms","method":"POST","requestID":"73df60f7075df1c0fbf8081940a5a079","responseTime":120,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:28:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"73df60f7075df1c0fbf8081940a5a079"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:59Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczOX0.xb9uzD27rzhaqZlRIh9c3mpu0JPobe3suXPBSf0E2Ic","level":"info","message":"auth send jwt","requestID":"4e106b19c34b75f7a514b893eebd8489"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4e106b19c34b75f7a514b893eebd8489","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4e106b19c34b75f7a514b893eebd8489"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":28.971511,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"4e106b19c34b75f7a514b893eebd8489","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173739,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczOX0.xb9uzD27rzhaqZlRIh9c3mpu0JPobe3suXPBSf0E2Ic"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"4e106b19c34b75f7a514b893eebd8489","responseTime":35,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.438845755Z"}]},"request_id":"8d6848fe-6bcd-4f29-9f40-6e78a3ee60cd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173739.4180624} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"4e106b19c34b75f7a514b893eebd8489","responseTime":11,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"37b6635b-1aea-4144-8330-1c89b93a7dec","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173739.4297123} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"4e106b19c34b75f7a514b893eebd8489","responseTime":31,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.438845755Z"}]},"request_id":"d8e1a85c-ccb1-4144-97ee-33372cc94124","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173739.4678464} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4e106b19c34b75f7a514b893eebd8489"} gateway-1 | {"time_local":"24/Sep/2024:10:28:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d2c0306c-7326-4695-9862-31a725fe1753 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.103","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4e106b19c34b75f7a514b893eebd8489"} device-1 | {"level":"info","message":"PATCH /devices/d2c0306c-7326-4695-9862-31a725fe1753 200 96ms","method":"PATCH","requestID":"4e106b19c34b75f7a514b893eebd8489","responseTime":96,"status":200,"url":"/devices/d2c0306c-7326-4695-9862-31a725fe1753"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"4e106b19c34b75f7a514b893eebd8489","responseTime":8,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczOX0.xb9uzD27rzhaqZlRIh9c3mpu0JPobe3suXPBSf0E2Ic","level":"info","message":"auth send jwt","requestID":"ea7bac762ab152717e9410a61a4c8455"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ea7bac762ab152717e9410a61a4c8455","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:28:59Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922932,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:28:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ea7bac762ab152717e9410a61a4c8455","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173739,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzczOX0.xb9uzD27rzhaqZlRIh9c3mpu0JPobe3suXPBSf0E2Ic"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ea7bac762ab152717e9410a61a4c8455"} authorization-1 | {"level":"info","message":"POST /authorize 200 28ms","method":"POST","requestID":"ea7bac762ab152717e9410a61a4c8455","responseTime":28,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ea7bac762ab152717e9410a61a4c8455"} device-1 | {"level":"info","message":"POST /devices/d2c0306c-7326-4695-9862-31a725fe1753/websocket 200 52ms","method":"POST","requestID":"ea7bac762ab152717e9410a61a4c8455","responseTime":52,"status":200,"url":"/devices/d2c0306c-7326-4695-9862-31a725fe1753/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:28:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d2c0306c-7326-4695-9862-31a725fe1753/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.057","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ea7bac762ab152717e9410a61a4c8455"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"89cd5879bce4d553a810305bdde7aa78","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":"89cd5879bce4d553a810305bdde7aa78","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:29:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/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":"89cd5879bce4d553a810305bdde7aa78"} device-1 | {"level":"info","message":"OPTIONS /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/websocket 200 1ms","method":"OPTIONS","requestID":"89cd5879bce4d553a810305bdde7aa78","responseTime":1,"status":200,"url":"/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ff7f7b7a53d9abee640bef5120fa24c9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8","level":"info","message":"auth send jwt","requestID":"ff7f7b7a53d9abee640bef5120fa24c9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ff7f7b7a53d9abee640bef5120fa24c9","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.91497,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ff7f7b7a53d9abee640bef5120fa24c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173740,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"ff7f7b7a53d9abee640bef5120fa24c9","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ff7f7b7a53d9abee640bef5120fa24c9"} gateway-1 | {"time_local":"24/Sep/2024:10:29:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.053","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":"ff7f7b7a53d9abee640bef5120fa24c9"} device-1 | {"level":"info","message":"POST /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/websocket 200 48ms","method":"POST","requestID":"ff7f7b7a53d9abee640bef5120fa24c9","responseTime":48,"status":200,"url":"/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8","level":"info","message":"auth send jwt","requestID":"d3e631ac7841a80d7aab04ea22786533"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"d3e631ac7841a80d7aab04ea22786533","responseTime":28,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d3e631ac7841a80d7aab04ea22786533"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.941229,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d3e631ac7841a80d7aab04ea22786533","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173740,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d3e631ac7841a80d7aab04ea22786533","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.438845755Z"}]},"request_id":"e63b3449-74e1-4d52-ad2d-216688f7deec","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173740.5980957} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d3e631ac7841a80d7aab04ea22786533","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d3e631ac7841a80d7aab04ea22786533"} gateway-1 | {"time_local":"24/Sep/2024:10:29:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d2c0306c-7326-4695-9862-31a725fe1753? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d3e631ac7841a80d7aab04ea22786533"} device-1 | {"level":"info","message":"GET /devices/d2c0306c-7326-4695-9862-31a725fe1753? 200 30ms","method":"GET","requestID":"d3e631ac7841a80d7aab04ea22786533","responseTime":30,"status":200,"url":"/devices/d2c0306c-7326-4695-9862-31a725fe1753?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8","level":"info","message":"auth send jwt","requestID":"8f3865da6d86cf30bb08d1e1254bb29a"} authentication-1 | {"level":"info","message":"GET /auth 200 30ms","method":"GET","requestID":"8f3865da6d86cf30bb08d1e1254bb29a","responseTime":30,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f3865da6d86cf30bb08d1e1254bb29a"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.920998,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"8f3865da6d86cf30bb08d1e1254bb29a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173740,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8f3865da6d86cf30bb08d1e1254bb29a","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.585475300Z"}]},"request_id":"fe958d3d-b25c-4b34-968d-e9db417c65c1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173740.6650016} authorization-1 | {"level":"info","message":"POST /relations/query 200 19ms","method":"POST","requestID":"8f3865da6d86cf30bb08d1e1254bb29a","responseTime":19,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f3865da6d86cf30bb08d1e1254bb29a"} gateway-1 | {"time_local":"24/Sep/2024:10:29:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.089","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8f3865da6d86cf30bb08d1e1254bb29a"} device-1 | {"level":"info","message":"GET /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8? 200 59ms","method":"GET","requestID":"8f3865da6d86cf30bb08d1e1254bb29a","responseTime":59,"status":200,"url":"/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8","level":"info","message":"auth send jwt","requestID":"125ff23d07b0991d0e54fba3e6046662"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"125ff23d07b0991d0e54fba3e6046662","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"125ff23d07b0991d0e54fba3e6046662"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.915979,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"125ff23d07b0991d0e54fba3e6046662","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173740,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"125ff23d07b0991d0e54fba3e6046662","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Attempting to run experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Attempting to book experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Successfully booked experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d0618af0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.953245,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d0618af0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173740,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"d0618af0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":29,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d067cc80-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.438845755Z"}]},"request_id":"85af4e07-cef9-4522-8e78-91536f911d4e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173740.8746457} authorization-1 | {"level":"info","message":"POST /relations/query 200 13ms","method":"POST","requestID":"d0618af0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.114467,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d067cc80-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173740,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"d067cc80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d0618af0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/d2c0306c-7326-4695-9862-31a725fe1753? 200 106ms","method":"GET","requestID":"d0618af0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":106,"status":200,"url":"/devices/d2c0306c-7326-4695-9862-31a725fe1753?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.585475300Z"}]},"request_id":"8aae961b-fca3-4e04-b4db-a20dca4d6050","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173740.9650414} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"d067cc80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d067cc80-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Setting up experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} device-1 | {"level":"info","message":"GET /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8? 200 111ms","method":"GET","requestID":"d067cc80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":111,"status":200,"url":"/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Successfully locked booking for experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Attempting to update booking for experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Successfully updated booking for experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Successfully set up experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d0917490-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d0956c30-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Successfully running experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48478","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.929406,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d0917490-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173740,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"d0917490-7a5f-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d0956c30-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173740,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"d0956c30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.112499,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:01Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d0998ae0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F30f07890-785c-4dd6-aaf4-b892bd582274#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F30f07890-785c-4dd6-aaf4-b892bd582274","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"dd812148-f136-4f7d-91f2-2f35cf16b4a5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.2326007} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"291eb4ac-c042-4d66-a5a2-2a6102bdc998","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.2332299} authorization-1 | {"level":"info","message":"POST /relations/update 200 71ms","method":"POST","requestID":"125ff23d07b0991d0e54fba3e6046662","responseTime":71,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.666425,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"599f77bb-93e7-4e50-b420-b232ed5fd935","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.2468524} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d0998ae0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 44ms","method":"POST","requestID":"d0998ae0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":44,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.438845755Z"}]},"request_id":"8c79ae69-896a-4488-adcf-3ae63cd97754","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.277561} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.585475300Z"}]},"request_id":"69ab5e24-b048-4cbc-993a-a6d9a636481d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.2780728} authorization-1 | {"level":"info","message":"POST /relations/query 200 51ms","method":"POST","requestID":"d0917490-7a5f-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 50ms","method":"POST","requestID":"d0956c30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"level":"info","message":"POST /experiments? 201 583ms","method":"POST","requestID":"125ff23d07b0991d0e54fba3e6046662","responseTime":583,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d0998ae0-7a5f-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:29:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.590","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"125ff23d07b0991d0e54fba3e6046662"} device-1 | {"level":"info","message":"POST /devices/d2c0306c-7326-4695-9862-31a725fe1753/signaling 200 105ms","method":"POST","requestID":"d0998ae0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":105,"status":200,"url":"/devices/d2c0306c-7326-4695-9862-31a725fe1753/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d0917490-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/d2c0306c-7326-4695-9862-31a725fe1753? 200 184ms","method":"GET","requestID":"d0917490-7a5f-11ef-8bac-49f2f0d74a99","responseTime":184,"status":200,"url":"/devices/d2c0306c-7326-4695-9862-31a725fe1753?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MX0.vqpxgGu2JYNqiBwsOok85aqFrIhxsgqMDx2_zqSn8vM","level":"info","message":"auth send jwt","requestID":"336f51e903142ad6145817ec88ff11b5"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"336f51e903142ad6145817ec88ff11b5","responseTime":29,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d0956c30-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8? 200 161ms","method":"GET","requestID":"d0956c30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":161,"status":200,"url":"/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d0ae2450-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"336f51e903142ad6145817ec88ff11b5"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0edd1abb-3d55-41a1-8580-64520550b779","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.3425643} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.464193,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:01Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d0afd200-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d0ae2450-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","object_type":"device","rebac_allow":false,"scope_allow":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":"d0ae2450-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.938235,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"336f51e903142ad6145817ec88ff11b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173741,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MX0.vqpxgGu2JYNqiBwsOok85aqFrIhxsgqMDx2_zqSn8vM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"336f51e903142ad6145817ec88ff11b5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d0ae2450-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/signaling 200 20ms","method":"POST","requestID":"d0ae2450-7a5f-11ef-8bac-49f2f0d74a99","responseTime":20,"status":200,"url":"/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/signaling"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.542666,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d0afd200-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"d0afd200-7a5f-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fdcadf79-efe6-4e64-919c-fb128262415a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.380669} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.438845755Z"}]},"request_id":"59a7624e-f34a-4412-a090-4fb08aecd95c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.3913782} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"336f51e903142ad6145817ec88ff11b5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d0afd200-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/d2c0306c-7326-4695-9862-31a725fe1753/signaling 200 90ms","method":"POST","requestID":"d0afd200-7a5f-11ef-8bac-49f2f0d74a99","responseTime":90,"status":200,"url":"/devices/d2c0306c-7326-4695-9862-31a725fe1753/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"336f51e903142ad6145817ec88ff11b5"} device-1 | {"level":"info","message":"GET /devices/d2c0306c-7326-4695-9862-31a725fe1753? 200 100ms","method":"GET","requestID":"336f51e903142ad6145817ec88ff11b5","responseTime":100,"status":200,"url":"/devices/d2c0306c-7326-4695-9862-31a725fe1753?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d2c0306c-7326-4695-9862-31a725fe1753? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"336f51e903142ad6145817ec88ff11b5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d0be02d0-7a5f-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MX0.vqpxgGu2JYNqiBwsOok85aqFrIhxsgqMDx2_zqSn8vM","level":"info","message":"auth send jwt","requestID":"3904269b1bece19aa1186636d1b008bc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3904269b1bece19aa1186636d1b008bc","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.321638,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea2b5933-3b1f-4a06-82b5-dfd6e861269b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.4435403} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d0be02d0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","object_type":"device","rebac_allow":false,"scope_allow":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":"d0be02d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3904269b1bece19aa1186636d1b008bc"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.94247,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3904269b1bece19aa1186636d1b008bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173741,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MX0.vqpxgGu2JYNqiBwsOok85aqFrIhxsgqMDx2_zqSn8vM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3904269b1bece19aa1186636d1b008bc","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d0be02d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/signaling 200 18ms","method":"POST","requestID":"d0be02d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Building connection plan","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"0f85f0a8-5da4-4284-bd68-ad206b7cfe7d"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"f7d119da-5b29-4841-9a72-f69c7c1c4108"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"1020a9a1-b86f-4b31-a9ac-e474d02c20db"}]},"level":"info","message":"Built pairwise service configurations","requestID":"125ff23d07b0991d0e54fba3e6046662"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"125ff23d07b0991d0e54fba3e6046662"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d0c5a3f0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:28:57.585475300Z"}]},"request_id":"711faf88-c7e0-44f8-8c14-9c5cbdd38de9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.4884286} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3904269b1bece19aa1186636d1b008bc","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.963397,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d0c5a3f0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173740,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0MH0.1QrlUABM9bnZdkP9Z32lcsfEZlZpMrvJeVSkxHUQRJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"d0c5a3f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3904269b1bece19aa1186636d1b008bc"} gateway-1 | {"time_local":"24/Sep/2024:10:29:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.100","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3904269b1bece19aa1186636d1b008bc"} device-1 | {"level":"info","message":"GET /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8? 200 94ms","method":"GET","requestID":"3904269b1bece19aa1186636d1b008bc","responseTime":94,"status":200,"url":"/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"83132be4-fa5c-46f2-b1bb-8bbcb88f3e06","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.5549524} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"361ab0c5-9051-4ae7-aa4c-be513d292cf4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.5562856} authorization-1 | {"level":"info","message":"POST /relations/update 200 38ms","method":"POST","requestID":"d0c5a3f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d0c5a3f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d0c5a3f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5'","requestID":"d0c5a3f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5'","requestID":"d0c5a3f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d0c5a3f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 118ms","method":"POST","requestID":"d0c5a3f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":118,"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":"d0c5a3f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","device":"94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","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 | {"device":"94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"125ff23d07b0991d0e54fba3e6046662"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d0fd2eb0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.213842,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf69a614-104f-4d07-93a3-f81e9cd89600","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.8572965} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d0fd2eb0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","object_type":"device","rebac_allow":false,"scope_allow":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":"d0fd2eb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d0fd2eb0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/d2c0306c-7326-4695-9862-31a725fe1753/signaling 200 20ms","method":"POST","requestID":"d0fd2eb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":20,"status":200,"url":"/devices/d2c0306c-7326-4695-9862-31a725fe1753/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1060850-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.176981,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b6bb5733-4767-41df-b722-5380d5ee0301","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173741.9144564} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d1060850-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","object_type":"device","rebac_allow":false,"scope_allow":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":"d1060850-7a5f-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1060850-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/signaling 200 16ms","method":"POST","requestID":"d1060850-7a5f-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/signaling"} device-1 | {"device":"d2c0306c-7326-4695-9862-31a725fe1753","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":"c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 2593008966052155710 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:GZHJ\r\na=ice-pwd:7i9yVad3gOt74KgfeqyH0MtO\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F5:B8:50:12:A7:89:8D:80:67:58:B1:DB:86:1F:D8:C5:A2:90:B2:A2:A0:0E:F8:E2:45:36:EB:A4:A8:05:5D:EA\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"d2c0306c-7326-4695-9862-31a725fe1753","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":"d2c0306c-7326-4695-9862-31a725fe1753","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":"d2c0306c-7326-4695-9862-31a725fe1753","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/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b69aacace9476336bf110e420333a9e","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":"8b69aacace9476336bf110e420333a9e","responseTime":1,"status":200,"url":"/auth"} device-1 | {"content":{"candidate":"candidate:2711505495 1 udp 2113937151 dabe660c-ab6c-48e5-abe8-b67b769582f6.local 34395 typ host generation 0 ufrag GZHJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} 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/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5"}}},"level":"info","message":"received a callback","requestID":"8b69aacace9476336bf110e420333a9e"} device-1 | {"data":{"peerconnection":"c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:632496168 1 udp 1677729535 141.24.211.56 34395 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag GZHJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8'"} device-1 | {"device":"d2c0306c-7326-4695-9862-31a725fe1753","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":"94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d2c0306c-7326-4695-9862-31a725fe1753","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":"94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} gateway-1 | {"time_local":"24/Sep/2024:10:29:03 +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.082","http_referrer":"","http_user_agent":"node-fetch","requestID":"8b69aacace9476336bf110e420333a9e"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 71ms","method":"POST","requestID":"8b69aacace9476336bf110e420333a9e","responseTime":71,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2dd7918bfaa62a712bc6268e1888e332","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":"2dd7918bfaa62a712bc6268e1888e332","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/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5"}}},"level":"info","message":"received a callback","requestID":"2dd7918bfaa62a712bc6268e1888e332"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:03Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d2375c60-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc9251c5b-2e9b-4fce-9f44-47fcff91c4c5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7feb0ba7-b3a7-4fb6-8c67-f57aa5369c2e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173743.960861} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":48.323907,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d2375c60-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","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 52ms","method":"POST","requestID":"d2375c60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":52,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d2375c60-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5 200 59ms","method":"GET","requestID":"d2375c60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 174ms","method":"POST","requestID":"2dd7918bfaa62a712bc6268e1888e332","responseTime":174,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.181","http_referrer":"","http_user_agent":"node-fetch","requestID":"2dd7918bfaa62a712bc6268e1888e332"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d24a4820-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.373808,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dee579a7-a5f8-4d29-9371-925b61a859f4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173744.0646436} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d24a4820-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"d24a4820-7a5f-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d24a4820-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/signaling 200 43ms","method":"POST","requestID":"d24a4820-7a5f-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2514d00-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5bbc3682-90f5-4916-9f04-75b42897758a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173744.095655} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.775468,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d2514d00-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","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":"d2514d00-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 57ms","method":"POST","requestID":"d2514d00-7a5f-11ef-8bac-49f2f0d74a99","responseTime":57,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/d2c0306c-7326-4695-9862-31a725fe1753/signaling 200 62ms","method":"POST","requestID":"d2514d00-7a5f-11ef-8bac-49f2f0d74a99","responseTime":62,"status":200,"url":"/devices/d2c0306c-7326-4695-9862-31a725fe1753/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0NH0.vZosBu7p2BhkQNtLJhj8fTzVT4oZ-rqmmNm7xsB_yFQ","level":"info","message":"auth send jwt","requestID":"8ecccb246de6157d6f7d36229afc97c3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8ecccb246de6157d6f7d36229afc97c3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/30f07890-785c-4dd6-aaf4-b892bd582274","requestID":"8ecccb246de6157d6f7d36229afc97c3"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.922295,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"8ecccb246de6157d6f7d36229afc97c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173744,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0NH0.vZosBu7p2BhkQNtLJhj8fTzVT4oZ-rqmmNm7xsB_yFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8ecccb246de6157d6f7d36229afc97c3","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/30f07890-785c-4dd6-aaf4-b892bd582274","requestID":"8ecccb246de6157d6f7d36229afc97c3"} experiment-1 | {"level":"info","message":"GET /experiments/30f07890-785c-4dd6-aaf4-b892bd582274 200 53ms","method":"GET","requestID":"8ecccb246de6157d6f7d36229afc97c3","responseTime":53,"status":200,"url":"/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"} gateway-1 | {"time_local":"24/Sep/2024:10:29:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/30f07890-785c-4dd6-aaf4-b892bd582274 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8ecccb246de6157d6f7d36229afc97c3"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/30f07890-785c-4dd6-aaf4-b892bd582274","requestID":"5872b0a45b145c28ea13aa91fc9ac0be"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0NH0.vZosBu7p2BhkQNtLJhj8fTzVT4oZ-rqmmNm7xsB_yFQ","level":"info","message":"auth send jwt","requestID":"5872b0a45b145c28ea13aa91fc9ac0be"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5872b0a45b145c28ea13aa91fc9ac0be","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.869778,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5872b0a45b145c28ea13aa91fc9ac0be","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173744,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0NH0.vZosBu7p2BhkQNtLJhj8fTzVT4oZ-rqmmNm7xsB_yFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5872b0a45b145c28ea13aa91fc9ac0be","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Attempting to finish experiment","requestID":"5872b0a45b145c28ea13aa91fc9ac0be"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d27cc9d0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.942091,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d27cc9d0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173744,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0NH0.vZosBu7p2BhkQNtLJhj8fTzVT4oZ-rqmmNm7xsB_yFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d27cc9d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","device":"94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"d2c0306c-7326-4695-9862-31a725fe1753","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":"d2c0306c-7326-4695-9862-31a725fe1753","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":"d2c0306c-7326-4695-9862-31a725fe1753","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"}} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc9251c5b-2e9b-4fce-9f44-47fcff91c4c5': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc9251c5b-2e9b-4fce-9f44-47fcff91c4c5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"88a90588-d91e-478c-a21e-5bdb9fb61d02","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173744.432578} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"79965f7a-766b-4f15-9158-8f962fb71460","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173744.4329228} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c9251c5b-2e9b-4fce-9f44-47fcff91c4c5","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4c44bf1b4c1880517e167da8fa8a4cfb","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":"4c44bf1b4c1880517e167da8fa8a4cfb","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9dc7c7ecb16281f4223df9a1de4bc027","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":"9dc7c7ecb16281f4223df9a1de4bc027","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 59ms","method":"POST","requestID":"d27cc9d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/relations/update"} 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/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5"}}},"level":"info","message":"received a callback","requestID":"4c44bf1b4c1880517e167da8fa8a4cfb"} 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/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5"}}},"level":"info","message":"received a callback","requestID":"9dc7c7ecb16281f4223df9a1de4bc027"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d27cc9d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5 204 131ms","method":"DELETE","requestID":"d27cc9d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":131,"status":204,"url":"/peerconnections/c9251c5b-2e9b-4fce-9f44-47fcff91c4c5"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"},"level":"info","message":"Successfully finished experiment","requestID":"5872b0a45b145c28ea13aa91fc9ac0be"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d29c38b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.719954,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F30f07890-785c-4dd6-aaf4-b892bd582274': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F30f07890-785c-4dd6-aaf4-b892bd582274","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"5793f97c-3f41-4d05-9aa9-c027c4d2041a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173744.6057663} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d7746aec-958c-446a-a110-ef902b329943","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173744.6065557} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d9581d4-6c2d-4b7d-a1f9-119ae0016fef","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173744.6082618} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d29c38b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 40ms","method":"POST","requestID":"d29c38b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 49ms","method":"POST","requestID":"5872b0a45b145c28ea13aa91fc9ac0be","responseTime":49,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d29c38b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/signaling 200 53ms","method":"POST","requestID":"d29c38b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2a53960-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.180967,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd2c0306c-7326-4695-9862-31a725fe1753","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10ec9af1-fb3a-49ce-acef-35896508eb2f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173744.6359837} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d2a53960-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"d2a53960-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2a53960-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/d2c0306c-7326-4695-9862-31a725fe1753/signaling 200 49ms","method":"POST","requestID":"d2a53960-7a5f-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/devices/d2c0306c-7326-4695-9862-31a725fe1753/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/30f07890-785c-4dd6-aaf4-b892bd582274","requestID":"5872b0a45b145c28ea13aa91fc9ac0be"} experiment-1 | {"level":"info","message":"DELETE /experiments/30f07890-785c-4dd6-aaf4-b892bd582274 204 515ms","method":"DELETE","requestID":"5872b0a45b145c28ea13aa91fc9ac0be","responseTime":515,"status":204,"url":"/experiments/30f07890-785c-4dd6-aaf4-b892bd582274"} gateway-1 | {"time_local":"24/Sep/2024:10:29:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/30f07890-785c-4dd6-aaf4-b892bd582274 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.518","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5872b0a45b145c28ea13aa91fc9ac0be"} gateway-1 | {"time_local":"24/Sep/2024:10:29:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2597","request_time":"5.301","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"91e38e7ae1bc98524fdd0f2fafbd6485"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.426","http_referrer":"","http_user_agent":"node-fetch","requestID":"4c44bf1b4c1880517e167da8fa8a4cfb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 416ms","method":"POST","requestID":"4c44bf1b4c1880517e167da8fa8a4cfb","responseTime":416,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 421ms","method":"POST","requestID":"9dc7c7ecb16281f4223df9a1de4bc027","responseTime":421,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.433","http_referrer":"","http_user_agent":"node-fetch","requestID":"9dc7c7ecb16281f4223df9a1de4bc027"} gateway-1 | {"time_local":"24/Sep/2024:10:29:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"4.337","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":"20ac82d82b16e2199049017f89dacf90"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d2c0306c-7326-4695-9862-31a725fe1753' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/94d498ad-1e2d-4dc4-b0d7-66a0bd14b3a8' closed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0NH0.vZosBu7p2BhkQNtLJhj8fTzVT4oZ-rqmmNm7xsB_yFQ","level":"info","message":"auth send jwt","requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e"} device-1 | {"level":"info","message":"postDevices called","requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e"} authentication-1 | {"level":"info","message":"GET /auth 200 61ms","method":"GET","requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e","responseTime":61,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.96682,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173744,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0NH0.vZosBu7p2BhkQNtLJhj8fTzVT4oZ-rqmmNm7xsB_yFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7b272a8b-329c-49ea-8eb5-59eba139f0ee","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173745.0915632} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6cff571c-cea6-4c65-9850-459a03860dae","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173745.1294165} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"96335314-9646-481e-ac77-0dcf5ac91d1a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173745.1457093} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c20fd467-6877-4fc2-9c49-e5e67b961b66","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173745.146977} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:05.145687255Z"}]},"request_id":"7a702f87-90bb-4e5c-ba99-1c18113a141d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173745.1785471} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e"} gateway-1 | {"time_local":"24/Sep/2024:10:29:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.256","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e"} device-1 | {"level":"info","message":"POST /devices? 201 200ms","method":"POST","requestID":"fbc3a06a2f39b3aa5476e128f0c28a8e","responseTime":200,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0NX0.q2HRhTfR5F4yo_15TOWQpR1pGrHkyXWInZex4jbJbhY","level":"info","message":"auth send jwt","requestID":"cc969e262623868178d540ed55b08a1c"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"cc969e262623868178d540ed55b08a1c","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cc969e262623868178d540ed55b08a1c"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:05Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.933153,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cc969e262623868178d540ed55b08a1c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173745,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0NX0.q2HRhTfR5F4yo_15TOWQpR1pGrHkyXWInZex4jbJbhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cc969e262623868178d540ed55b08a1c","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8374cbc9-53ee-456d-bb7b-f43592ab671a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173745.281592} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"cc969e262623868178d540ed55b08a1c","responseTime":28,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d3f145bb-71e0-4981-8225-e108e26ccc28","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173745.2904215} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"cc969e262623868178d540ed55b08a1c","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"7f55536f-194b-43fc-b899-022bf24cfdf1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173745.3047955} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dbf46345-053e-46f9-8cbc-4a654310adf1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173745.3055296} authorization-1 | {"level":"info","message":"POST /relations/update 200 46ms","method":"POST","requestID":"cc969e262623868178d540ed55b08a1c","responseTime":46,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:05.304773116Z"}]},"request_id":"83f06e90-65cf-4aa5-9ab3-cf4a592252ef","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173745.3483772} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cc969e262623868178d540ed55b08a1c"} device-1 | {"level":"info","message":"POST /devices? 201 158ms","method":"POST","requestID":"cc969e262623868178d540ed55b08a1c","responseTime":158,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 23ms","method":"POST","requestID":"cc969e262623868178d540ed55b08a1c","responseTime":23,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:29:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cc969e262623868178d540ed55b08a1c"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c398e5be8bc9fbf0e1a83bcb2481ae38","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":"c398e5be8bc9fbf0e1a83bcb2481ae38","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:29:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/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":"c398e5be8bc9fbf0e1a83bcb2481ae38"} device-1 | {"level":"info","message":"OPTIONS /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/websocket 200 1ms","method":"OPTIONS","requestID":"c398e5be8bc9fbf0e1a83bcb2481ae38","responseTime":1,"status":200,"url":"/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4","level":"info","message":"auth send jwt","requestID":"4391e0e8a35303e26f2ab314ee98e338"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4391e0e8a35303e26f2ab314ee98e338","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4391e0e8a35303e26f2ab314ee98e338"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":25.167056,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"4391e0e8a35303e26f2ab314ee98e338","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173748,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"4391e0e8a35303e26f2ab314ee98e338","responseTime":30,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4391e0e8a35303e26f2ab314ee98e338"} device-1 | {"level":"info","message":"POST /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/websocket 200 48ms","method":"POST","requestID":"4391e0e8a35303e26f2ab314ee98e338","responseTime":48,"status":200,"url":"/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:29:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.053","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":"4391e0e8a35303e26f2ab314ee98e338"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2b5727603c0685e2038c25675046fccd","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 4ms","method":"GET","requestID":"2b5727603c0685e2038c25675046fccd","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:29:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/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":"2b5727603c0685e2038c25675046fccd"} device-1 | {"level":"info","message":"OPTIONS /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/websocket 200 1ms","method":"OPTIONS","requestID":"2b5727603c0685e2038c25675046fccd","responseTime":1,"status":200,"url":"/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4","level":"info","message":"auth send jwt","requestID":"0ed492462cb59aa042d8354424056a9e"} authentication-1 | {"level":"info","message":"GET /auth 200 32ms","method":"GET","requestID":"0ed492462cb59aa042d8354424056a9e","responseTime":32,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0ed492462cb59aa042d8354424056a9e"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.993858,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0ed492462cb59aa042d8354424056a9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173748,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0ed492462cb59aa042d8354424056a9e","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0ed492462cb59aa042d8354424056a9e"} gateway-1 | {"time_local":"24/Sep/2024:10:29:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.101","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":"0ed492462cb59aa042d8354424056a9e"} device-1 | {"level":"info","message":"POST /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/websocket 200 100ms","method":"POST","requestID":"0ed492462cb59aa042d8354424056a9e","responseTime":100,"status":200,"url":"/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4","level":"info","message":"auth send jwt","requestID":"1665340d202820b830317a8561456306"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1665340d202820b830317a8561456306","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1665340d202820b830317a8561456306"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.076813,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1665340d202820b830317a8561456306","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173748,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1665340d202820b830317a8561456306","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:05.145687255Z"}]},"request_id":"bd3c97f3-03f2-4073-839f-9b286bfb31b3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173748.715835} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1665340d202820b830317a8561456306","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1665340d202820b830317a8561456306"} gateway-1 | {"time_local":"24/Sep/2024:10:29:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66? 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":"1665340d202820b830317a8561456306"} device-1 | {"level":"info","message":"GET /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66? 200 28ms","method":"GET","requestID":"1665340d202820b830317a8561456306","responseTime":28,"status":200,"url":"/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4","level":"info","message":"auth send jwt","requestID":"9df92f43fdb1e80504e725b0e86aec14"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9df92f43fdb1e80504e725b0e86aec14","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9df92f43fdb1e80504e725b0e86aec14"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195789,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9df92f43fdb1e80504e725b0e86aec14","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173748,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"9df92f43fdb1e80504e725b0e86aec14","responseTime":30,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:05.304773116Z"}]},"request_id":"457ffd35-0267-4119-a14b-882d0ff6d1ef","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173748.7693198} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9df92f43fdb1e80504e725b0e86aec14","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9df92f43fdb1e80504e725b0e86aec14"} gateway-1 | {"time_local":"24/Sep/2024:10:29:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9df92f43fdb1e80504e725b0e86aec14"} device-1 | {"level":"info","message":"GET /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7? 200 48ms","method":"GET","requestID":"9df92f43fdb1e80504e725b0e86aec14","responseTime":48,"status":200,"url":"/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4","level":"info","message":"auth send jwt","requestID":"f3614e24a271eb9c0c911db4504f44d4"} authentication-1 | {"level":"info","message":"GET /auth 200 36ms","method":"GET","requestID":"f3614e24a271eb9c0c911db4504f44d4","responseTime":36,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f3614e24a271eb9c0c911db4504f44d4"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.95461,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f3614e24a271eb9c0c911db4504f44d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173748,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"f3614e24a271eb9c0c911db4504f44d4","responseTime":12,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Attempting to run experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Attempting to book experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Successfully booked experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d53755f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d537cb20-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":25.171342,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d53755f0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173748,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"d53755f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.953037,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d537cb20-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173748,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"d537cb20-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:05.145687255Z"}]},"request_id":"388bab3c-6b5d-4c0e-8c59-97bea9f20be9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173748.995665} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:05.304773116Z"}]},"request_id":"97f8ca86-53a0-412e-a505-d913c2794bd3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173748.9982307} authorization-1 | {"level":"info","message":"POST /relations/query 200 43ms","method":"POST","requestID":"d53755f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 42ms","method":"POST","requestID":"d537cb20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d53755f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66? 200 108ms","method":"GET","requestID":"d53755f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":108,"status":200,"url":"/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d537cb20-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Setting up experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} device-1 | {"level":"info","message":"GET /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7? 200 140ms","method":"GET","requestID":"d537cb20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":140,"status":200,"url":"/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Successfully set up experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d55df0c0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.954422,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d55df0c0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173748,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d55df0c0-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:05.145687255Z"}]},"request_id":"ccf12913-f050-491e-975a-5a51999e00ec","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.23262} authorization-1 | {"level":"info","message":"POST /relations/query 200 30ms","method":"POST","requestID":"d55df0c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":30,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d5643250-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:09Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d55df0c0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922673,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:09Z"} device-1 | {"level":"info","message":"GET /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66? 200 48ms","method":"GET","requestID":"d55df0c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d5643250-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173748,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5667c40-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 47ms","method":"POST","requestID":"d5643250-7a5f-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:09Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Successfully running experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"192afc3f-eac7-44b2-8141-61a591814146","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.2926881} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:05.304773116Z"}]},"request_id":"3277f59c-7182-4df9-b35e-c4708c1d4a09","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.2933571} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.175192,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"d5643250-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d5667c40-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","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":"d5643250-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7? 200 72ms","method":"GET","requestID":"d5643250-7a5f-11ef-8bac-49f2f0d74a99","responseTime":72,"status":200,"url":"/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d573c2b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5667c40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/signaling 200 92ms","method":"POST","requestID":"d5667c40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":92,"status":200,"url":"/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 58ms","method":"POST","requestID":"d5667c40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":58,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5760ca0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12c24430-7109-475b-8c36-885d2c03794d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.3890102} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60336","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":43.761359,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.668162,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d573c2b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 52ms","method":"POST","requestID":"d573c2b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":52,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"978b6e69-0717-483e-a32e-7dbde5a3578e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.3928316} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d573c2b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/signaling 200 66ms","method":"POST","requestID":"d573c2b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":66,"status":200,"url":"/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d5760ca0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 56ms","method":"POST","requestID":"d5760ca0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62a06b78-b98a-41fa-854b-ed275625b130#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62a06b78-b98a-41fa-854b-ed275625b130","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"3767775e-c16b-4aaf-b7eb-56882f41a1d5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.4109585} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"264c22ec-3f49-415b-8989-48c82b6bf7b8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.4120014} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d583c840-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5760ca0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/signaling 200 95ms","method":"POST","requestID":"d5760ca0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":95,"status":200,"url":"/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 112ms","method":"POST","requestID":"f3614e24a271eb9c0c911db4504f44d4","responseTime":112,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f3614e24a271eb9c0c911db4504f44d4"} gateway-1 | {"time_local":"24/Sep/2024:10:29:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"777","request_time":"0.714","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f3614e24a271eb9c0c911db4504f44d4"} experiment-1 | {"level":"info","message":"POST /experiments? 201 677ms","method":"POST","requestID":"f3614e24a271eb9c0c911db4504f44d4","responseTime":677,"status":201,"url":"/experiments?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OX0.Sxtng2_5zycNPi_OldfvZntCViJkVoObxzJfLJjR04o","level":"info","message":"auth send jwt","requestID":"bd0771cb852fde1aaf5b6f4e53d19068"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bd0771cb852fde1aaf5b6f4e53d19068","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd0771cb852fde1aaf5b6f4e53d19068"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":31.968311,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cbf4b533-ba0a-4c5b-a720-efd4c1075035","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.492796} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d583c840-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","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":"d583c840-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/signaling 200 113ms","method":"POST","requestID":"d583c840-7a5f-11ef-8bac-49f2f0d74a99","responseTime":113,"status":200,"url":"/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Building connection plan","requestID":"f3614e24a271eb9c0c911db4504f44d4"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"9d692277-9788-440a-8999-d4e5c04d7072"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"d840b791-ddf2-4234-a981-38c831b95d1e"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"c4056d27-ecf1-4fbf-a2d8-5a19df775d0c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f3614e24a271eb9c0c911db4504f44d4"} 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/9d4b2a3b-b928-40c2-8919-4205bc7628e7"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f3614e24a271eb9c0c911db4504f44d4"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d595f0b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 108ms","method":"POST","requestID":"d583c840-7a5f-11ef-8bac-49f2f0d74a99","responseTime":108,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.928405,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bd0771cb852fde1aaf5b6f4e53d19068","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173749,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OX0.Sxtng2_5zycNPi_OldfvZntCViJkVoObxzJfLJjR04o"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"bd0771cb852fde1aaf5b6f4e53d19068","responseTime":31,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.946913,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d595f0b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173748,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OH0.Sh76XoviTmGTG2UGjmkiszk8hPcX5fQJ9E9e2nbc2e4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d595f0b0-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:05.145687255Z"}]},"request_id":"8e1e3358-5941-498d-8256-4bb8f53c6235","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.612663} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"bd0771cb852fde1aaf5b6f4e53d19068","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd0771cb852fde1aaf5b6f4e53d19068"} device-1 | {"level":"info","message":"GET /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66? 200 122ms","method":"GET","requestID":"bd0771cb852fde1aaf5b6f4e53d19068","responseTime":122,"status":200,"url":"/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.128","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bd0771cb852fde1aaf5b6f4e53d19068"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OX0.Sxtng2_5zycNPi_OldfvZntCViJkVoObxzJfLJjR04o","level":"info","message":"auth send jwt","requestID":"567a5fd10ed31435a4b627a28005c705"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"6e7c68c4-361f-4087-b922-bbc1dfa5f30a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.6541545} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"567a5fd10ed31435a4b627a28005c705","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"567a5fd10ed31435a4b627a28005c705"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0cefd554-1efa-4daa-a602-029a7b35fbc4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.6553924} authorization-1 | {"level":"info","message":"POST /relations/update 200 45ms","method":"POST","requestID":"d595f0b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.995795,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"567a5fd10ed31435a4b627a28005c705","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173749,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc0OX0.Sxtng2_5zycNPi_OldfvZntCViJkVoObxzJfLJjR04o"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"567a5fd10ed31435a4b627a28005c705","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:05.304773116Z"}]},"request_id":"51514a0e-af8a-4293-9e32-539c1089a03e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.6802475} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"567a5fd10ed31435a4b627a28005c705","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d595f0b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d595f0b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3'","requestID":"d595f0b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3'","requestID":"d595f0b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d595f0b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 149ms","method":"POST","requestID":"d595f0b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":149,"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":"567a5fd10ed31435a4b627a28005c705"} gateway-1 | {"time_local":"24/Sep/2024:10:29:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"567a5fd10ed31435a4b627a28005c705"} device-1 | {"level":"info","message":"GET /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7? 200 54ms","method":"GET","requestID":"567a5fd10ed31435a4b627a28005c705","responseTime":54,"status":200,"url":"/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"d595f0b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3","device":"a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","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} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3","device":"9d4b2a3b-b928-40c2-8919-4205bc7628e7","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} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f3614e24a271eb9c0c911db4504f44d4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5c0f850-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"device":"9d4b2a3b-b928-40c2-8919-4205bc7628e7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9d4b2a3b-b928-40c2-8919-4205bc7628e7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46ed619f-eb2c-46f0-bdfd-dac419cd599f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.855386} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.19804,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d5c0f850-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"d5c0f850-7a5f-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/authorize"} device-1 | {"device":"a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5c0f850-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/signaling 200 51ms","method":"POST","requestID":"d5c0f850-7a5f-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d5c935b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"content":{"sdp":"v=0\r\no=- 7755020061015088400 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:9rXr\r\na=ice-pwd:922we0HMVzRCQK0GbMPS4lEy\r\na=ice-options:trickle\r\na=fingerprint:sha-256 02:23:FD:D0:07:33:F1:7C:42:41:2D:1B:25:88:DD:27:9C:02:BF:15:D3:01:2D:A3:B0:8C:E2:F0:AA:D3:B6:54\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66'"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.507365,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:09Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d62e9fa-9728-4321-a598-2a705d6ca4ee","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173749.905817} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d5c935b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","object_type":"device","rebac_allow":false,"scope_allow":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":"d5c935b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d5c935b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/signaling 200 18ms","method":"POST","requestID":"d5c935b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 3863794987298472508 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:bXCg\r\na=ice-pwd:bg86xoV63P+KVZGX8+x2Wah+\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B5:D7:16:FA:29:6D:9D:54:46:70:BF:DD:EA:A2:B3:86:BB:C8:E1:5B:8B:F5:71:6F:29:C7:44:AD:6F:94:D8:9E\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"9d4b2a3b-b928-40c2-8919-4205bc7628e7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:874439301 1 udp 2113937151 c7c590c1-363c-4044-83ac-6895facfdf8b.local 44513 typ host generation 0 ufrag bXCg network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9d4b2a3b-b928-40c2-8919-4205bc7628e7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3173951560 1 udp 2113937151 2099d7b4-f598-46d1-8c12-71779d387851.local 43914 typ host generation 0 ufrag 9rXr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:772082011 1 udp 1677729535 141.24.211.56 43914 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 9rXr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2418651817 1 udp 33562623 141.24.210.113 53620 typ relay raddr 141.24.211.56 rport 43914 generation 0 ufrag 9rXr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","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/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66'"} device-1 | {"device":"a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","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/a442af01-27ef-45b8-9864-1fd9345937d3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a442af01-27ef-45b8-9864-1fd9345937d3","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"content":{"candidate":"candidate:373320712 1 udp 1677729535 141.24.211.56 44513 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag bXCg network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9d4b2a3b-b928-40c2-8919-4205bc7628e7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"9d4b2a3b-b928-40c2-8919-4205bc7628e7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"9d4b2a3b-b928-40c2-8919-4205bc7628e7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"65c63c71c4a487f458fd33a7d1a26fd0","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":"new","url":"http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3"}}},"level":"info","message":"received a callback","requestID":"65c63c71c4a487f458fd33a7d1a26fd0"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"65c63c71c4a487f458fd33a7d1a26fd0","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"9d4b2a3b-b928-40c2-8919-4205bc7628e7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"a442af01-27ef-45b8-9864-1fd9345937d3","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.094","http_referrer":"","http_user_agent":"node-fetch","requestID":"65c63c71c4a487f458fd33a7d1a26fd0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 87ms","method":"POST","requestID":"65c63c71c4a487f458fd33a7d1a26fd0","responseTime":87,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"a442af01-27ef-45b8-9864-1fd9345937d3","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9d4b2a3b-b928-40c2-8919-4205bc7628e7","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/a442af01-27ef-45b8-9864-1fd9345937d3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a442af01-27ef-45b8-9864-1fd9345937d3","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a8787f73e2a6f7a143dabbec8126bd2c","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":"a8787f73e2a6f7a143dabbec8126bd2c","responseTime":1,"status":200,"url":"/auth"} 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/9d4b2a3b-b928-40c2-8919-4205bc7628e7"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3"}}},"level":"info","message":"received a callback","requestID":"a8787f73e2a6f7a143dabbec8126bd2c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d60888a0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:10Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.370039,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:10Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa442af01-27ef-45b8-9864-1fd9345937d3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a6e4af3-8388-4929-9cec-6f70433db306","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173750.3282983} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d60888a0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3","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":"d60888a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d60888a0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3 200 50ms","method":"GET","requestID":"d60888a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.183","http_referrer":"","http_user_agent":"node-fetch","requestID":"a8787f73e2a6f7a143dabbec8126bd2c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 178ms","method":"POST","requestID":"a8787f73e2a6f7a143dabbec8126bd2c","responseTime":178,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d61cd3f0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:10Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.352291,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:10Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d7b379f-700d-4c1a-a3cc-d5e69612e09b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173750.453477} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d61cd3f0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","object_type":"device","rebac_allow":false,"scope_allow":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":"d61cd3f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d61cd3f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/signaling 200 48ms","method":"POST","requestID":"d61cd3f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d6258680-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:10Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.352225,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:10Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c5630ad8-1d5b-425a-9411-8fb5f79c4e00","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173750.511229} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d6258680-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","object_type":"device","rebac_allow":false,"scope_allow":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":"d6258680-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d6258680-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/signaling 200 58ms","method":"POST","requestID":"d6258680-7a5f-11ef-8bac-49f2f0d74a99","responseTime":58,"status":200,"url":"/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1MX0.gwLuxEKjgXijyHXlkXPDZ2ShwbEZSllkPM3um1eogBU","level":"info","message":"auth send jwt","requestID":"70bd21c0d88af1d9f16058f87621fefe"} authentication-1 | {"level":"info","message":"GET /auth 200 27ms","method":"GET","requestID":"70bd21c0d88af1d9f16058f87621fefe","responseTime":27,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/62a06b78-b98a-41fa-854b-ed275625b130","requestID":"70bd21c0d88af1d9f16058f87621fefe"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.99275,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"70bd21c0d88af1d9f16058f87621fefe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173751,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1MX0.gwLuxEKjgXijyHXlkXPDZ2ShwbEZSllkPM3um1eogBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"70bd21c0d88af1d9f16058f87621fefe","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/62a06b78-b98a-41fa-854b-ed275625b130","requestID":"70bd21c0d88af1d9f16058f87621fefe"} experiment-1 | {"level":"info","message":"GET /experiments/62a06b78-b98a-41fa-854b-ed275625b130 200 21ms","method":"GET","requestID":"70bd21c0d88af1d9f16058f87621fefe","responseTime":21,"status":200,"url":"/experiments/62a06b78-b98a-41fa-854b-ed275625b130"} gateway-1 | {"time_local":"24/Sep/2024:10:29:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/62a06b78-b98a-41fa-854b-ed275625b130 HTTP/1.1","status": "200","body_bytes_sent":"850","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"70bd21c0d88af1d9f16058f87621fefe"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1MX0.gwLuxEKjgXijyHXlkXPDZ2ShwbEZSllkPM3um1eogBU","level":"info","message":"auth send jwt","requestID":"6076ef3258d9da44b17aa93273c9522f"} authentication-1 | {"level":"info","message":"GET /auth 200 33ms","method":"GET","requestID":"6076ef3258d9da44b17aa93273c9522f","responseTime":33,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/62a06b78-b98a-41fa-854b-ed275625b130","requestID":"6076ef3258d9da44b17aa93273c9522f"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.942564,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"6076ef3258d9da44b17aa93273c9522f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173751,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1MX0.gwLuxEKjgXijyHXlkXPDZ2ShwbEZSllkPM3um1eogBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6076ef3258d9da44b17aa93273c9522f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Attempting to finish experiment","requestID":"6076ef3258d9da44b17aa93273c9522f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d690f280-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.949989,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d690f280-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173751,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1MX0.gwLuxEKjgXijyHXlkXPDZ2ShwbEZSllkPM3um1eogBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d690f280-7a5f-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3","device":"a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa442af01-27ef-45b8-9864-1fd9345937d3': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa442af01-27ef-45b8-9864-1fd9345937d3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"06948544-fa2a-4ed7-aa0b-54779c457a47","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173751.274094} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cdd0a7fd-aaa6-44dd-9645-f5b04caec8c8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173751.2755263} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"d690f280-7a5f-11ef-8bac-49f2f0d74a99","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3","device":"9d4b2a3b-b928-40c2-8919-4205bc7628e7","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/a442af01-27ef-45b8-9864-1fd9345937d3' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a442af01-27ef-45b8-9864-1fd9345937d3","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9614b24fa21c4a8e1b754d88efad0f37","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":"9614b24fa21c4a8e1b754d88efad0f37","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4d1d8f22be5827418db5aaad434ffa5d","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":"4d1d8f22be5827418db5aaad434ffa5d","responseTime":1,"status":200,"url":"/auth"} 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/9d4b2a3b-b928-40c2-8919-4205bc7628e7"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3"}}},"level":"info","message":"received a callback","requestID":"9614b24fa21c4a8e1b754d88efad0f37"} 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/9d4b2a3b-b928-40c2-8919-4205bc7628e7"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3"}}},"level":"info","message":"received a callback","requestID":"4d1d8f22be5827418db5aaad434ffa5d"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66'"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d690f280-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3 204 182ms","method":"DELETE","requestID":"d690f280-7a5f-11ef-8bac-49f2f0d74a99","responseTime":182,"status":204,"url":"/peerconnections/a442af01-27ef-45b8-9864-1fd9345937d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62a06b78-b98a-41fa-854b-ed275625b130"},"level":"info","message":"Successfully finished experiment","requestID":"6076ef3258d9da44b17aa93273c9522f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d6b89ec0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d4b2a3b-b928-40c2-8919-4205bc7628e7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"03342b13-38cf-4bfd-b2cf-79d8064ac81b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173751.4783003} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.390754,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d6b89ec0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7","object_type":"device","rebac_allow":false,"scope_allow":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":"d6b89ec0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d6b89ec0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/signaling 200 56ms","method":"POST","requestID":"d6b89ec0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d6c17860-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62a06b78-b98a-41fa-854b-ed275625b130': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62a06b78-b98a-41fa-854b-ed275625b130","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"3a41c5ac-4b2d-4073-8d57-55efe191bcde","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173751.5246286} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d0c085ec-e86e-4c30-acdf-b1768d449877","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173751.526241} authorization-1 | {"level":"info","message":"POST /relations/update 200 88ms","method":"POST","requestID":"6076ef3258d9da44b17aa93273c9522f","responseTime":88,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":10.163392,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2f3c5d3-fe4d-4236-a717-03dc8c27eb66","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"666d31c4-efba-4d60-9230-290c7472475c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173751.5417666} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d6c17860-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 47ms","method":"POST","requestID":"d6c17860-7a5f-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d6c17860-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/signaling 200 66ms","method":"POST","requestID":"d6c17860-7a5f-11ef-8bac-49f2f0d74a99","responseTime":66,"status":200,"url":"/devices/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/62a06b78-b98a-41fa-854b-ed275625b130","requestID":"6076ef3258d9da44b17aa93273c9522f"} gateway-1 | {"time_local":"24/Sep/2024:10:29:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/62a06b78-b98a-41fa-854b-ed275625b130 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.565","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6076ef3258d9da44b17aa93273c9522f"} experiment-1 | {"level":"info","message":"DELETE /experiments/62a06b78-b98a-41fa-854b-ed275625b130 204 531ms","method":"DELETE","requestID":"6076ef3258d9da44b17aa93273c9522f","responseTime":531,"status":204,"url":"/experiments/62a06b78-b98a-41fa-854b-ed275625b130"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 373ms","method":"POST","requestID":"9614b24fa21c4a8e1b754d88efad0f37","responseTime":373,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29:11 +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.419","http_referrer":"","http_user_agent":"node-fetch","requestID":"9614b24fa21c4a8e1b754d88efad0f37"} gateway-1 | {"time_local":"24/Sep/2024:10:29:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2629","request_time":"3.234","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":"e7804a4732bea8a017ed4fe67cc4d9e2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1MX0.gwLuxEKjgXijyHXlkXPDZ2ShwbEZSllkPM3um1eogBU","level":"info","message":"auth send jwt","requestID":"3a60c690cb0b977b40a9dc5563386251"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3a60c690cb0b977b40a9dc5563386251","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 423ms","method":"POST","requestID":"4d1d8f22be5827418db5aaad434ffa5d","responseTime":423,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2978","request_time":"3.094","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":"cd7cc4546e7f9a8757c0d4600b3ce890"} gateway-1 | {"time_local":"24/Sep/2024:10:29:11 +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.427","http_referrer":"","http_user_agent":"node-fetch","requestID":"4d1d8f22be5827418db5aaad434ffa5d"} device-1 | {"level":"info","message":"postDevices called","requestID":"3a60c690cb0b977b40a9dc5563386251"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.987437,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3a60c690cb0b977b40a9dc5563386251","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173751,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1MX0.gwLuxEKjgXijyHXlkXPDZ2ShwbEZSllkPM3um1eogBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3a60c690cb0b977b40a9dc5563386251","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/a2f3c5d3-fe4d-4236-a717-03dc8c27eb66' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9d4b2a3b-b928-40c2-8919-4205bc7628e7' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0ffbfbd4-6b04-4710-9547-36d258c8a539","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173751.839746} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"3a60c690cb0b977b40a9dc5563386251","responseTime":31,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3503bf8f-82b9-452c-b64c-7d00f09ac592","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173751.8710623} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3a60c690cb0b977b40a9dc5563386251","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"4eeb85c9-8901-4711-ae52-897310ce4c43","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173751.8889785} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ebb37a8c-5894-483c-a061-12d8c75c0c8f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173751.8902278} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"3a60c690cb0b977b40a9dc5563386251","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:11.888953593Z"}]},"request_id":"7ce31858-365f-421d-ac9f-6f29811452fc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173751.935205} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3a60c690cb0b977b40a9dc5563386251"} gateway-1 | {"time_local":"24/Sep/2024:10:29:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.186","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3a60c690cb0b977b40a9dc5563386251"} device-1 | {"level":"info","message":"POST /devices? 201 175ms","method":"POST","requestID":"3a60c690cb0b977b40a9dc5563386251","responseTime":175,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3a60c690cb0b977b40a9dc5563386251","responseTime":6,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1MX0.gwLuxEKjgXijyHXlkXPDZ2ShwbEZSllkPM3um1eogBU","level":"info","message":"auth send jwt","requestID":"59db17f082dd08b281f58dcae15ec962"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"59db17f082dd08b281f58dcae15ec962","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"59db17f082dd08b281f58dcae15ec962"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.934467,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"59db17f082dd08b281f58dcae15ec962","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173751,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1MX0.gwLuxEKjgXijyHXlkXPDZ2ShwbEZSllkPM3um1eogBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 39ms","method":"POST","requestID":"59db17f082dd08b281f58dcae15ec962","responseTime":39,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c1c1d616-904b-4713-80ca-54933c19f45f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173752.0454514} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"59db17f082dd08b281f58dcae15ec962","responseTime":28,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa206e98-4e0c-443b-96d9-caf46af02b58","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173752.0525417} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"59db17f082dd08b281f58dcae15ec962","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"4d7268bb-a8f4-4e6e-9107-83d1edff33eb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173752.075081} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5579602b-25c7-4f83-a777-4f1fa61d3627","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173752.0763419} authorization-1 | {"level":"info","message":"POST /relations/update 200 51ms","method":"POST","requestID":"59db17f082dd08b281f58dcae15ec962","responseTime":51,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:12.075056025Z"}]},"request_id":"6bf22c78-3fae-44ea-b1ac-abb650255c2a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173752.10782} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"59db17f082dd08b281f58dcae15ec962","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"59db17f082dd08b281f58dcae15ec962"} gateway-1 | {"time_local":"24/Sep/2024:10:29:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.171","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"59db17f082dd08b281f58dcae15ec962"} device-1 | {"level":"info","message":"POST /devices? 201 166ms","method":"POST","requestID":"59db17f082dd08b281f58dcae15ec962","responseTime":166,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1M30.p2UTxstK0ftdAfAILhq_Emq8r5yR73XMvAUofu8tQe8","level":"info","message":"auth send jwt","requestID":"b2d74db9284b780c3c549dba66c32f88"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"b2d74db9284b780c3c549dba66c32f88","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b2d74db9284b780c3c549dba66c32f88"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:13Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.877871,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b2d74db9284b780c3c549dba66c32f88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173753,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1M30.p2UTxstK0ftdAfAILhq_Emq8r5yR73XMvAUofu8tQe8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b2d74db9284b780c3c549dba66c32f88","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:12.075056025Z"}]},"request_id":"a6730719-7327-4c80-af6a-7f9b88b0d6d7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173753.780352} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"b2d74db9284b780c3c549dba66c32f88","responseTime":31,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9414b44e-d483-4bb7-b7ce-043e1eb0d369","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173753.8198335} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b2d74db9284b780c3c549dba66c32f88","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b2d74db9284b780c3c549dba66c32f88"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:12.075056025Z"}]},"request_id":"1161c14b-8f2b-4d4e-839e-629684ef530a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173753.8653855} device-1 | {"level":"info","message":"PATCH /devices/76a55681-8928-4e34-8660-f57b6feeddb1 200 102ms","method":"PATCH","requestID":"b2d74db9284b780c3c549dba66c32f88","responseTime":102,"status":200,"url":"/devices/76a55681-8928-4e34-8660-f57b6feeddb1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"b2d74db9284b780c3c549dba66c32f88","responseTime":7,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:29:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/76a55681-8928-4e34-8660-f57b6feeddb1 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.113","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b2d74db9284b780c3c549dba66c32f88"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1M30.p2UTxstK0ftdAfAILhq_Emq8r5yR73XMvAUofu8tQe8","level":"info","message":"auth send jwt","requestID":"8a136c54701bcc34754abb8639e6c7ef"} authentication-1 | {"level":"info","message":"GET /auth 200 42ms","method":"GET","requestID":"8a136c54701bcc34754abb8639e6c7ef","responseTime":42,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8a136c54701bcc34754abb8639e6c7ef"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:13Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.949614,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"8a136c54701bcc34754abb8639e6c7ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173753,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1M30.p2UTxstK0ftdAfAILhq_Emq8r5yR73XMvAUofu8tQe8"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"8a136c54701bcc34754abb8639e6c7ef","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8a136c54701bcc34754abb8639e6c7ef"} device-1 | {"level":"info","message":"POST /devices/76a55681-8928-4e34-8660-f57b6feeddb1/websocket 200 51ms","method":"POST","requestID":"8a136c54701bcc34754abb8639e6c7ef","responseTime":51,"status":200,"url":"/devices/76a55681-8928-4e34-8660-f57b6feeddb1/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:29:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/76a55681-8928-4e34-8660-f57b6feeddb1/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.091","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8a136c54701bcc34754abb8639e6c7ef"} device-1 | {"level":"info","message":"device 'http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cb63eb4b7ef887bbfeb38e7303416d1f","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 | {"level":"info","message":"OPTIONS /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/websocket 200 2ms","method":"OPTIONS","requestID":"cb63eb4b7ef887bbfeb38e7303416d1f","responseTime":2,"status":200,"url":"/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:29:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/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":"cb63eb4b7ef887bbfeb38e7303416d1f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cb63eb4b7ef887bbfeb38e7303416d1f","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc","level":"info","message":"auth send jwt","requestID":"b5d86e9a14ba631a294fed989cda2f12"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b5d86e9a14ba631a294fed989cda2f12"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b5d86e9a14ba631a294fed989cda2f12","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.990209,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b5d86e9a14ba631a294fed989cda2f12","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173755,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b5d86e9a14ba631a294fed989cda2f12","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b5d86e9a14ba631a294fed989cda2f12"} gateway-1 | {"time_local":"24/Sep/2024:10:29:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.050","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":"b5d86e9a14ba631a294fed989cda2f12"} device-1 | {"level":"info","message":"POST /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/websocket 200 45ms","method":"POST","requestID":"b5d86e9a14ba631a294fed989cda2f12","responseTime":45,"status":200,"url":"/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc","level":"info","message":"auth send jwt","requestID":"6263db26f8731fe26714a9249aac72a3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6263db26f8731fe26714a9249aac72a3"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.93056,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"6263db26f8731fe26714a9249aac72a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173755,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6263db26f8731fe26714a9249aac72a3","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 42ms","method":"GET","requestID":"6263db26f8731fe26714a9249aac72a3","responseTime":42,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:11.888953593Z"}]},"request_id":"36847360-c6d9-4ac7-aa25-f3d50eb7a2ca","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173755.3017085} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6263db26f8731fe26714a9249aac72a3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6263db26f8731fe26714a9249aac72a3"} gateway-1 | {"time_local":"24/Sep/2024:10:29:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6263db26f8731fe26714a9249aac72a3"} device-1 | {"level":"info","message":"GET /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde? 200 32ms","method":"GET","requestID":"6263db26f8731fe26714a9249aac72a3","responseTime":32,"status":200,"url":"/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc","level":"info","message":"auth send jwt","requestID":"208d2fe950204f720e110d0a84264bc4"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"208d2fe950204f720e110d0a84264bc4","responseTime":29,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"208d2fe950204f720e110d0a84264bc4"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.948458,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"208d2fe950204f720e110d0a84264bc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173755,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"208d2fe950204f720e110d0a84264bc4","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:12.075056025Z"}]},"request_id":"ef9add07-dba4-4d43-b0c1-f0bfa4549067","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173755.3585773} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"208d2fe950204f720e110d0a84264bc4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"208d2fe950204f720e110d0a84264bc4"} gateway-1 | {"time_local":"24/Sep/2024:10:29:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/76a55681-8928-4e34-8660-f57b6feeddb1? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"208d2fe950204f720e110d0a84264bc4"} device-1 | {"level":"info","message":"GET /devices/76a55681-8928-4e34-8660-f57b6feeddb1? 200 31ms","method":"GET","requestID":"208d2fe950204f720e110d0a84264bc4","responseTime":31,"status":200,"url":"/devices/76a55681-8928-4e34-8660-f57b6feeddb1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc","level":"info","message":"auth send jwt","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} authentication-1 | {"level":"info","message":"GET /auth 200 33ms","method":"GET","requestID":"d52652d754b1bc3a2b893b1d72f94f44","responseTime":33,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.908699,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d52652d754b1bc3a2b893b1d72f94f44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173755,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d52652d754b1bc3a2b893b1d72f94f44","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Attempting to run experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Attempting to book experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Successfully booked experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d91f1770-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.85375,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d91f1770-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173755,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 28ms","method":"POST","requestID":"d91f1770-7a5f-11ef-8bac-49f2f0d74a99","responseTime":28,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:11.888953593Z"}]},"request_id":"537ffbde-d629-4779-808c-83ca12e1013b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173755.5297792} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d91f1770-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d924e3d0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.854584,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d924e3d0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173755,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d924e3d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d91f1770-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:12.075056025Z"}]},"request_id":"51bf2c0b-62cb-48b1-9740-df7801760e03","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173755.5524042} device-1 | {"level":"info","message":"GET /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde? 200 59ms","method":"GET","requestID":"d91f1770-7a5f-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 13ms","method":"POST","requestID":"d924e3d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d924e3d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/76a55681-8928-4e34-8660-f57b6feeddb1? 200 69ms","method":"GET","requestID":"d924e3d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":69,"status":200,"url":"/devices/76a55681-8928-4e34-8660-f57b6feeddb1?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Setting up experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Successfully set up experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9484a50-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.906213,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d9484a50-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173755,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d9484a50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Successfully running experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d94b0970-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":5.187226,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d94b0970-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173755,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d94d5360-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"d94b0970-7a5f-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e7d631a-5285-41f9-8928-6f4fd30b0d8b#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e7d631a-5285-41f9-8928-6f4fd30b0d8b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"fd1bb6ac-3b05-456b-9b31-9769dc925a4b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173755.795395} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9e40c7ca-0b58-4022-bc6d-fabeb8a49bff","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173755.7967398} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"d52652d754b1bc3a2b893b1d72f94f44","responseTime":27,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.541042,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:15Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 430ms","method":"POST","requestID":"d52652d754b1bc3a2b893b1d72f94f44","responseTime":430,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8c1f485-3fb6-407f-8181-f70b1398070e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173755.8083043} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:11.888953593Z"}]},"request_id":"93c453c9-bcd9-4c80-8198-2d34838a0ca4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173755.840481} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d94d5360-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 42ms","method":"POST","requestID":"d94d5360-7a5f-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 36ms","method":"POST","requestID":"d9484a50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":36,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:29:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.472","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc","level":"info","message":"auth send jwt","requestID":"b3cffbcde3c74a6ea9e48cf72b06af67"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b3cffbcde3c74a6ea9e48cf72b06af67","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:12.075056025Z"}]},"request_id":"90ae9563-559a-4e92-9e76-0435efa4cf16","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173755.857874} authorization-1 | {"level":"info","message":"POST /relations/query 200 45ms","method":"POST","requestID":"d94b0970-7a5f-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b3cffbcde3c74a6ea9e48cf72b06af67"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.934305,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b3cffbcde3c74a6ea9e48cf72b06af67","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173755,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b3cffbcde3c74a6ea9e48cf72b06af67","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d94d5360-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/signaling 200 142ms","method":"POST","requestID":"d94d5360-7a5f-11ef-8bac-49f2f0d74a99","responseTime":142,"status":200,"url":"/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9484a50-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde? 200 179ms","method":"GET","requestID":"d9484a50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":179,"status":200,"url":"/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9640fb0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:11.888953593Z"}]},"request_id":"514934ab-cbf6-4fbc-b7b6-6b4ac1705377","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173755.9508672} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b3cffbcde3c74a6ea9e48cf72b06af67","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:15Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20e2aa50-6762-480a-b99b-736ed8f2b497","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173755.9596703} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d94b0970-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.628901,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:15Z"} device-1 | {"level":"info","message":"GET /devices/76a55681-8928-4e34-8660-f57b6feeddb1? 200 217ms","method":"GET","requestID":"d94b0970-7a5f-11ef-8bac-49f2f0d74a99","responseTime":217,"status":200,"url":"/devices/76a55681-8928-4e34-8660-f57b6feeddb1?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d96c7420-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d9640fb0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 49ms","method":"POST","requestID":"d9640fb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b3cffbcde3c74a6ea9e48cf72b06af67"} device-1 | {"level":"info","message":"GET /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde? 200 104ms","method":"GET","requestID":"b3cffbcde3c74a6ea9e48cf72b06af67","responseTime":104,"status":200,"url":"/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b3cffbcde3c74a6ea9e48cf72b06af67"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1Nn0.ehbzwkTqZNhjI8-VwMejDS_vlG5As96gNVF0VK5zSO8","level":"info","message":"auth send jwt","requestID":"bafcecad24c788f87468ebb0f68cabb2"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.504895,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:16Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf9cf3fb-3d4c-44b9-8e0d-4f61c74b5ec4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173756.0151846} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"bafcecad24c788f87468ebb0f68cabb2","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d96c7420-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","object_type":"device","rebac_allow":false,"scope_allow":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":"d96c7420-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bafcecad24c788f87468ebb0f68cabb2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9640fb0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/76a55681-8928-4e34-8660-f57b6feeddb1/signaling 200 103ms","method":"POST","requestID":"d9640fb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":103,"status":200,"url":"/devices/76a55681-8928-4e34-8660-f57b6feeddb1/signaling"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:16Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d96c7420-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/signaling 200 54ms","method":"POST","requestID":"d96c7420-7a5f-11ef-8bac-49f2f0d74a99","responseTime":54,"status":200,"url":"/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d974d890-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.978993,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bafcecad24c788f87468ebb0f68cabb2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173756,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1Nn0.ehbzwkTqZNhjI8-VwMejDS_vlG5As96gNVF0VK5zSO8"} authorization-1 | {"level":"info","message":"POST /authorize 200 19ms","method":"POST","requestID":"bafcecad24c788f87468ebb0f68cabb2","responseTime":19,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:12.075056025Z"}]},"request_id":"6a873368-baa1-48b1-a00d-2e1624f4823d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173756.0705204} authorization-1 | {"level":"info","message":"POST /relations/query 200 30ms","method":"POST","requestID":"bafcecad24c788f87468ebb0f68cabb2","responseTime":30,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e2ab370e-8a6f-4920-8f0b-e3c5ad008824","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173756.0983186} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.3799,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d974d890-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","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":"bafcecad24c788f87468ebb0f68cabb2"} device-1 | {"level":"info","message":"GET /devices/76a55681-8928-4e34-8660-f57b6feeddb1? 200 62ms","method":"GET","requestID":"bafcecad24c788f87468ebb0f68cabb2","responseTime":62,"status":200,"url":"/devices/76a55681-8928-4e34-8660-f57b6feeddb1?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/76a55681-8928-4e34-8660-f57b6feeddb1? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.097","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bafcecad24c788f87468ebb0f68cabb2"} authorization-1 | {"level":"info","message":"POST /authorize 200 44ms","method":"POST","requestID":"d974d890-7a5f-11ef-8bac-49f2f0d74a99","responseTime":44,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d974d890-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Building connection plan","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"fb32a7fb-e927-4e99-85ff-0b672f0ae5da"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"f001d7c0-bfa5-424b-8e0b-eb6776c1b406"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"1b7e1fd3-4f24-4b98-9327-a24ee6d43393"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} 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/8f0cdcc4-1af0-4364-b790-7877cc822bde"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} device-1 | {"level":"info","message":"POST /devices/76a55681-8928-4e34-8660-f57b6feeddb1/signaling 200 62ms","method":"POST","requestID":"d974d890-7a5f-11ef-8bac-49f2f0d74a99","responseTime":62,"status":200,"url":"/devices/76a55681-8928-4e34-8660-f57b6feeddb1/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d97e9c90-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.934589,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d97e9c90-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173755,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1NX0.IwSfszc-GzudbptJm2qaffpW4oYwdB5eR-_z29oVRXc"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d97e9c90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"6d6731e9-3734-4e8e-8cba-6456afabf78d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173756.2027304} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d23a1557-b14e-44c5-b165-b42d25709513","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173756.2041168} authorization-1 | {"level":"info","message":"POST /relations/update 200 35ms","method":"POST","requestID":"d97e9c90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":35,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d97e9c90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d97e9c90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518'","requestID":"d97e9c90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518'","requestID":"d97e9c90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d97e9c90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 139ms","method":"POST","requestID":"d97e9c90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":139,"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":"d97e9c90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","device":"8f0cdcc4-1af0-4364-b790-7877cc822bde","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} device-1 | {"device":"8f0cdcc4-1af0-4364-b790-7877cc822bde","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"8f0cdcc4-1af0-4364-b790-7877cc822bde","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d52652d754b1bc3a2b893b1d72f94f44"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9b31a10-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.217392,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:16Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ad0002d-239d-4a7d-8aa9-140338f54e66","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173756.4769971} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d9b31a10-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","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":"d9b31a10-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/signaling 200 19ms","method":"POST","requestID":"d9b31a10-7a5f-11ef-8bac-49f2f0d74a99","responseTime":19,"status":200,"url":"/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 17ms","method":"POST","requestID":"d9b31a10-7a5f-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9bae240-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.182872,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:16Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3996097-827c-4621-92c5-5296d65d11fe","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173756.5317402} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d9bae240-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"d9bae240-7a5f-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9bae240-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/76a55681-8928-4e34-8660-f57b6feeddb1/signaling 200 60ms","method":"POST","requestID":"d9bae240-7a5f-11ef-8bac-49f2f0d74a99","responseTime":60,"status":200,"url":"/devices/76a55681-8928-4e34-8660-f57b6feeddb1/signaling"} device-1 | {"device":"76a55681-8928-4e34-8660-f57b6feeddb1","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":"9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1762963930649911765 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:F0xu\r\na=ice-pwd:IIsp6/4pJ/CeGgmutcFbWvmO\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A3:98:53:1A:F6:49:89:23:EE:4E:F7:E5:7D:C8:46:18:5E:C0:9E:D2:F2:CD:E6:51:BF:2A:65:D3:99:2B:A6:64\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"8f0cdcc4-1af0-4364-b790-7877cc822bde","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"76a55681-8928-4e34-8660-f57b6feeddb1","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":"76a55681-8928-4e34-8660-f57b6feeddb1","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":"76a55681-8928-4e34-8660-f57b6feeddb1","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/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} 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":"new","url":"http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518"}}},"level":"info","message":"received a callback","requestID":"79099753f033678d1d241d1becb89fb3"} device-1 | {"content":{"candidate":"candidate:3403739672 1 udp 2113937151 90fa30ef-e727-44cc-80df-67f5e1c20c46.local 43678 typ host generation 0 ufrag F0xu network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8f0cdcc4-1af0-4364-b790-7877cc822bde","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"8f0cdcc4-1af0-4364-b790-7877cc822bde","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1322096743 1 udp 1677729535 141.24.211.56 43678 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag F0xu network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8f0cdcc4-1af0-4364-b790-7877cc822bde","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":"79099753f033678d1d241d1becb89fb3","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 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde'"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"79099753f033678d1d241d1becb89fb3","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"peerconnection":"9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"24/Sep/2024:10:29:18 +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":"79099753f033678d1d241d1becb89fb3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"79099753f033678d1d241d1becb89fb3","responseTime":42,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"8f0cdcc4-1af0-4364-b790-7877cc822bde","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"8f0cdcc4-1af0-4364-b790-7877cc822bde","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8f0cdcc4-1af0-4364-b790-7877cc822bde","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"device":"76a55681-8928-4e34-8660-f57b6feeddb1","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":"76a55681-8928-4e34-8660-f57b6feeddb1","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":"9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a5c05a5791c460bdb9aa0bd5379262a5","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 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} 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/8f0cdcc4-1af0-4364-b790-7877cc822bde"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518"}}},"level":"info","message":"received a callback","requestID":"a5c05a5791c460bdb9aa0bd5379262a5"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a5c05a5791c460bdb9aa0bd5379262a5","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"db19aef0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:18Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.982332,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:18Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dbce8efb-57fd-4c4a-8837-224284c013fa","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173758.823349} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"db19aef0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","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":"db19aef0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"db19aef0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518 200 140ms","method":"GET","requestID":"db19aef0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":140,"status":200,"url":"/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 199ms","method":"POST","requestID":"a5c05a5791c460bdb9aa0bd5379262a5","responseTime":199,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db324000-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:18Z"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.241","http_referrer":"","http_user_agent":"node-fetch","requestID":"a5c05a5791c460bdb9aa0bd5379262a5"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.229495,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:18Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f1284fe-4931-4599-83c1-9be56d735040","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173758.9824295} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"db324000-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"db324000-7a5f-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db324000-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/signaling 200 50ms","method":"POST","requestID":"db324000-7a5f-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db3a5650-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.385935,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ceb61a72-70a8-4a04-87da-b8c6ba74d8b6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173759.0353036} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"db3a5650-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"db3a5650-7a5f-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db3a5650-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/76a55681-8928-4e34-8660-f57b6feeddb1/signaling 200 40ms","method":"POST","requestID":"db3a5650-7a5f-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/devices/76a55681-8928-4e34-8660-f57b6feeddb1/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1OX0.X1VVHNOJSXBP-3WNe7R05qgoV9UThO4FUYn-qcLlI0Y","level":"info","message":"auth send jwt","requestID":"5f3a7dc35781eaac9683b02b5a52d6ad"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5f3a7dc35781eaac9683b02b5a52d6ad","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b","requestID":"5f3a7dc35781eaac9683b02b5a52d6ad"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.922268,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5f3a7dc35781eaac9683b02b5a52d6ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173759,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1OX0.X1VVHNOJSXBP-3WNe7R05qgoV9UThO4FUYn-qcLlI0Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5f3a7dc35781eaac9683b02b5a52d6ad","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b","requestID":"5f3a7dc35781eaac9683b02b5a52d6ad"} gateway-1 | {"time_local":"24/Sep/2024:10:29:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5f3a7dc35781eaac9683b02b5a52d6ad"} experiment-1 | {"level":"info","message":"GET /experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b 200 42ms","method":"GET","requestID":"5f3a7dc35781eaac9683b02b5a52d6ad","responseTime":42,"status":200,"url":"/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1OX0.X1VVHNOJSXBP-3WNe7R05qgoV9UThO4FUYn-qcLlI0Y","level":"info","message":"auth send jwt","requestID":"fb522329694992904b11e028995fa78a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fb522329694992904b11e028995fa78a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b","requestID":"fb522329694992904b11e028995fa78a"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.183379,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fb522329694992904b11e028995fa78a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173759,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1OX0.X1VVHNOJSXBP-3WNe7R05qgoV9UThO4FUYn-qcLlI0Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb522329694992904b11e028995fa78a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Attempting to finish experiment","requestID":"fb522329694992904b11e028995fa78a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"db91ec30-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":3.05059,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"db91ec30-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173759,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc1OX0.X1VVHNOJSXBP-3WNe7R05qgoV9UThO4FUYn-qcLlI0Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"db91ec30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","device":"8f0cdcc4-1af0-4364-b790-7877cc822bde","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/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d46e416d9a9cf561cb804959f9455e15","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 25ms","method":"GET","requestID":"d46e416d9a9cf561cb804959f9455e15","responseTime":25,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c949167fe59389824980fea31d907a70","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":"c949167fe59389824980fea31d907a70","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/8f0cdcc4-1af0-4364-b790-7877cc822bde"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518"}}},"level":"info","message":"received a callback","requestID":"d46e416d9a9cf561cb804959f9455e15"} device-1 | {"device":"76a55681-8928-4e34-8660-f57b6feeddb1","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":"76a55681-8928-4e34-8660-f57b6feeddb1","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":"76a55681-8928-4e34-8660-f57b6feeddb1","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"}} 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/8f0cdcc4-1af0-4364-b790-7877cc822bde"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518"}}},"level":"info","message":"received a callback","requestID":"c949167fe59389824980fea31d907a70"} device-1 | {"data":{"peerconnection":"9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9a273e8a-8b32-4cc1-9cfa-947eb5e0e518': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9a273e8a-8b32-4cc1-9cfa-947eb5e0e518","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"5cf98ba6-8453-44f6-a6d1-bf34fb89064e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173759.7445602} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"11e45479-6024-4e87-9aad-aa0ccb8cf86f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173759.7451632} authorization-1 | {"level":"info","message":"POST /relations/update 200 59ms","method":"POST","requestID":"db91ec30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"db91ec30-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518 204 186ms","method":"DELETE","requestID":"db91ec30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":186,"status":204,"url":"/peerconnections/9a273e8a-8b32-4cc1-9cfa-947eb5e0e518"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"},"level":"info","message":"Successfully finished experiment","requestID":"fb522329694992904b11e028995fa78a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dbbea180-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f0cdcc4-1af0-4364-b790-7877cc822bde","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eecb72c8-7191-4ef2-8c65-dcee0a334713","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173759.9029183} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.989919,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"dbbea180-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde","object_type":"device","rebac_allow":false,"scope_allow":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":"dbbea180-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dbbea180-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/signaling 200 18ms","method":"POST","requestID":"dbbea180-7a5f-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde/signaling"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e7d631a-5285-41f9-8928-6f4fd30b0d8b': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e7d631a-5285-41f9-8928-6f4fd30b0d8b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"f878334a-cdbb-4091-8206-fd276a640f20","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173759.9161334} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9a8b2e69-716f-4e3d-8221-573a8f06e1a1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173759.9167552} authorization-1 | {"level":"info","message":"POST /relations/update 200 81ms","method":"POST","requestID":"fb522329694992904b11e028995fa78a","responseTime":81,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dbc6dee0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a55681-8928-4e34-8660-f57b6feeddb1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"134ce22b-cd31-4b4e-a9cf-8c5a5d99ff59","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173759.964522} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":11.931315,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"dbc6dee0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"dbc6dee0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dbc6dee0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/76a55681-8928-4e34-8660-f57b6feeddb1/signaling 200 48ms","method":"POST","requestID":"dbc6dee0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/devices/76a55681-8928-4e34-8660-f57b6feeddb1/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b","requestID":"fb522329694992904b11e028995fa78a"} gateway-1 | {"time_local":"24/Sep/2024:10:29:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.629","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fb522329694992904b11e028995fa78a"} gateway-1 | {"time_local":"24/Sep/2024:10:29:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2582","request_time":"6.247","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fba3f75ecd9ba2a3671e471aff50572b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2MH0.nAXNGxEbFzC2YP4gnfnhab65Llt7McfnMycIqoWKFjs","level":"info","message":"auth send jwt","requestID":"27dee367c8d61b99a6470c03e17ab011"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"27dee367c8d61b99a6470c03e17ab011","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"DELETE /experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b 204 641ms","method":"DELETE","requestID":"fb522329694992904b11e028995fa78a","responseTime":641,"status":204,"url":"/experiments/5e7d631a-5285-41f9-8928-6f4fd30b0d8b"} device-1 | {"level":"info","message":"postDevices called","requestID":"27dee367c8d61b99a6470c03e17ab011"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/76a55681-8928-4e34-8660-f57b6feeddb1' closed"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:20Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.035744,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"27dee367c8d61b99a6470c03e17ab011","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173760,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2MH0.nAXNGxEbFzC2YP4gnfnhab65Llt7McfnMycIqoWKFjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"27dee367c8d61b99a6470c03e17ab011","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:29:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"5.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":"5d333a618545f788a53239ad1e051241"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 581ms","method":"POST","requestID":"d46e416d9a9cf561cb804959f9455e15","responseTime":582,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.615","http_referrer":"","http_user_agent":"node-fetch","requestID":"d46e416d9a9cf561cb804959f9455e15"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 586ms","method":"POST","requestID":"c949167fe59389824980fea31d907a70","responseTime":586,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.622","http_referrer":"","http_user_agent":"node-fetch","requestID":"c949167fe59389824980fea31d907a70"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8f0cdcc4-1af0-4364-b790-7877cc822bde' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"13746763-e248-4601-b96d-0825d9665311","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173760.4126024} authorization-1 | {"level":"info","message":"POST /relations/query 200 34ms","method":"POST","requestID":"27dee367c8d61b99a6470c03e17ab011","responseTime":34,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9a9ab59e-e65b-4f2e-b4fc-6c03e2f55c24","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173760.4287124} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"27dee367c8d61b99a6470c03e17ab011","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"c077e93e-92ec-4104-9c4f-66b6ac5e7276","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173760.468722} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98a4f4e8-b9ad-4aba-aae8-3962c871b723","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173760.469371} authorization-1 | {"level":"info","message":"POST /relations/update 200 48ms","method":"POST","requestID":"27dee367c8d61b99a6470c03e17ab011","responseTime":48,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.468690075Z"}]},"request_id":"19194810-c9b4-48b0-9cc4-6a13d4d67aa4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173760.4821692} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"27dee367c8d61b99a6470c03e17ab011","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"27dee367c8d61b99a6470c03e17ab011"} device-1 | {"level":"info","message":"POST /devices? 201 259ms","method":"POST","requestID":"27dee367c8d61b99a6470c03e17ab011","responseTime":259,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2MH0.nAXNGxEbFzC2YP4gnfnhab65Llt7McfnMycIqoWKFjs","level":"info","message":"auth send jwt","requestID":"41881bf9eb4e0f2b9f73ae7898719a13"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"41881bf9eb4e0f2b9f73ae7898719a13","responseTime":28,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.271","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"27dee367c8d61b99a6470c03e17ab011"} device-1 | {"level":"info","message":"postDevices called","requestID":"41881bf9eb4e0f2b9f73ae7898719a13"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:20Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.982544,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"41881bf9eb4e0f2b9f73ae7898719a13","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173760,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2MH0.nAXNGxEbFzC2YP4gnfnhab65Llt7McfnMycIqoWKFjs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"41881bf9eb4e0f2b9f73ae7898719a13","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f60cb94b-fed7-4dc8-b1a7-7cfc85082161","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173760.6274822} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"41881bf9eb4e0f2b9f73ae7898719a13","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"62fa7a3e-ad40-42cd-85cf-bd988aed9b12","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173760.6357324} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"41881bf9eb4e0f2b9f73ae7898719a13","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"968473a5-865a-474c-b56e-3f932bc7f09b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173760.6779485} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6433066-dee2-443e-8884-da440342ce43","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173760.6791642} authorization-1 | {"level":"info","message":"POST /relations/update 200 51ms","method":"POST","requestID":"41881bf9eb4e0f2b9f73ae7898719a13","responseTime":51,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.677923181Z"}]},"request_id":"727c5be1-e186-4871-b097-6c1d402fe3f9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173760.6908052} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"41881bf9eb4e0f2b9f73ae7898719a13"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.205","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"41881bf9eb4e0f2b9f73ae7898719a13"} device-1 | {"level":"info","message":"POST /devices? 201 166ms","method":"POST","requestID":"41881bf9eb4e0f2b9f73ae7898719a13","responseTime":166,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"41881bf9eb4e0f2b9f73ae7898719a13","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3fe5df98a547a0242029632a9a39b9d0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2Mn0.o6V90y4mfowbOmIJFRUMveiK69vSjM02nnRFYsY7kGc","level":"info","message":"auth send jwt","requestID":"3fe5df98a547a0242029632a9a39b9d0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3fe5df98a547a0242029632a9a39b9d0","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.809881,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3fe5df98a547a0242029632a9a39b9d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173762,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2Mn0.o6V90y4mfowbOmIJFRUMveiK69vSjM02nnRFYsY7kGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3fe5df98a547a0242029632a9a39b9d0","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.468690075Z"}]},"request_id":"413ad0e4-15a6-4967-946f-8ff21bb07aef","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173762.727641} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"3fe5df98a547a0242029632a9a39b9d0","responseTime":28,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"137ff329-a6a3-4c29-ab53-0441ce7ec5ec","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173762.7598598} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3fe5df98a547a0242029632a9a39b9d0","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.468690075Z"}]},"request_id":"6606f841-4b14-4896-915d-a0cf629c62a5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173762.8243475} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"3fe5df98a547a0242029632a9a39b9d0","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3fe5df98a547a0242029632a9a39b9d0"} device-1 | {"level":"info","message":"PATCH /devices/123da848-dd24-4057-9977-2090a2cea9e1 200 175ms","method":"PATCH","requestID":"3fe5df98a547a0242029632a9a39b9d0","responseTime":175,"status":200,"url":"/devices/123da848-dd24-4057-9977-2090a2cea9e1"} gateway-1 | {"time_local":"24/Sep/2024:10:29:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/123da848-dd24-4057-9977-2090a2cea9e1 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.182","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3fe5df98a547a0242029632a9a39b9d0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2Mn0.o6V90y4mfowbOmIJFRUMveiK69vSjM02nnRFYsY7kGc","level":"info","message":"auth send jwt","requestID":"36ee292dd124c63841854a9228b70a27"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"36ee292dd124c63841854a9228b70a27","responseTime":12,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"36ee292dd124c63841854a9228b70a27"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.761738,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"36ee292dd124c63841854a9228b70a27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173762,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2Mn0.o6V90y4mfowbOmIJFRUMveiK69vSjM02nnRFYsY7kGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"36ee292dd124c63841854a9228b70a27","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"36ee292dd124c63841854a9228b70a27"} device-1 | {"level":"info","message":"POST /devices/123da848-dd24-4057-9977-2090a2cea9e1/websocket 200 59ms","method":"POST","requestID":"36ee292dd124c63841854a9228b70a27","responseTime":59,"status":200,"url":"/devices/123da848-dd24-4057-9977-2090a2cea9e1/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:29:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/123da848-dd24-4057-9977-2090a2cea9e1/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.072","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"36ee292dd124c63841854a9228b70a27"} device-1 | {"level":"info","message":"device 'http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"601813ff0df228ff30f2f881c3141aef","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":"601813ff0df228ff30f2f881c3141aef","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:29:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f80df867-4244-4619-abb6-9356e3d8dc64/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":"601813ff0df228ff30f2f881c3141aef"} device-1 | {"level":"info","message":"OPTIONS /devices/f80df867-4244-4619-abb6-9356e3d8dc64/websocket 200 2ms","method":"OPTIONS","requestID":"601813ff0df228ff30f2f881c3141aef","responseTime":2,"status":200,"url":"/devices/f80df867-4244-4619-abb6-9356e3d8dc64/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2M30.zYjE5_Bvdtbd583LvdADwToxwFcvlbyiSstNeRgU8-k","level":"info","message":"auth send jwt","requestID":"55ed9af50752e65db48acf9955ef52d7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"55ed9af50752e65db48acf9955ef52d7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"55ed9af50752e65db48acf9955ef52d7"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:23Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.958608,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"55ed9af50752e65db48acf9955ef52d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173763,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2M30.zYjE5_Bvdtbd583LvdADwToxwFcvlbyiSstNeRgU8-k"} authorization-1 | {"level":"info","message":"POST /authorize 200 84ms","method":"POST","requestID":"55ed9af50752e65db48acf9955ef52d7","responseTime":84,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"55ed9af50752e65db48acf9955ef52d7"} gateway-1 | {"time_local":"24/Sep/2024:10:29:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f80df867-4244-4619-abb6-9356e3d8dc64/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.105","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":"55ed9af50752e65db48acf9955ef52d7"} device-1 | {"level":"info","message":"POST /devices/f80df867-4244-4619-abb6-9356e3d8dc64/websocket 200 100ms","method":"POST","requestID":"55ed9af50752e65db48acf9955ef52d7","responseTime":100,"status":200,"url":"/devices/f80df867-4244-4619-abb6-9356e3d8dc64/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64' connected"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce80715e53119fbe3e02008513ecdd2c"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:23Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2M30.zYjE5_Bvdtbd583LvdADwToxwFcvlbyiSstNeRgU8-k","level":"info","message":"auth send jwt","requestID":"ce80715e53119fbe3e02008513ecdd2c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ce80715e53119fbe3e02008513ecdd2c","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.916608,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ce80715e53119fbe3e02008513ecdd2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173763,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2M30.zYjE5_Bvdtbd583LvdADwToxwFcvlbyiSstNeRgU8-k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ce80715e53119fbe3e02008513ecdd2c","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.468690075Z"}]},"request_id":"3a86a9b1-5a73-4763-a526-04651c6c6bd9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173763.9593618} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce80715e53119fbe3e02008513ecdd2c"} gateway-1 | {"time_local":"24/Sep/2024:10:29:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/123da848-dd24-4057-9977-2090a2cea9e1? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ce80715e53119fbe3e02008513ecdd2c"} device-1 | {"level":"info","message":"GET /devices/123da848-dd24-4057-9977-2090a2cea9e1? 200 79ms","method":"GET","requestID":"ce80715e53119fbe3e02008513ecdd2c","responseTime":79,"status":200,"url":"/devices/123da848-dd24-4057-9977-2090a2cea9e1?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 44ms","method":"POST","requestID":"ce80715e53119fbe3e02008513ecdd2c","responseTime":44,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4","level":"info","message":"auth send jwt","requestID":"f86b30fecd554f7f43d1b4c00447cfd9"} authentication-1 | {"level":"info","message":"GET /auth 200 30ms","method":"GET","requestID":"f86b30fecd554f7f43d1b4c00447cfd9","responseTime":30,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f86b30fecd554f7f43d1b4c00447cfd9"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.862549,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f86b30fecd554f7f43d1b4c00447cfd9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173764,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f86b30fecd554f7f43d1b4c00447cfd9","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.677923181Z"}]},"request_id":"2c4a83e6-346a-4717-977b-45e8ddeb204e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.015522} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f86b30fecd554f7f43d1b4c00447cfd9"} device-1 | {"level":"info","message":"GET /devices/f80df867-4244-4619-abb6-9356e3d8dc64? 200 16ms","method":"GET","requestID":"f86b30fecd554f7f43d1b4c00447cfd9","responseTime":16,"status":200,"url":"/devices/f80df867-4244-4619-abb6-9356e3d8dc64?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"f86b30fecd554f7f43d1b4c00447cfd9","responseTime":8,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:29:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f80df867-4244-4619-abb6-9356e3d8dc64? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f86b30fecd554f7f43d1b4c00447cfd9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4","level":"info","message":"auth send jwt","requestID":"21508d3c4f06efb13905536a3e1a220f"} authentication-1 | {"level":"info","message":"GET /auth 200 42ms","method":"GET","requestID":"21508d3c4f06efb13905536a3e1a220f","responseTime":42,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"21508d3c4f06efb13905536a3e1a220f"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.894182,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"21508d3c4f06efb13905536a3e1a220f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173764,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"21508d3c4f06efb13905536a3e1a220f","responseTime":35,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Attempting to run experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Attempting to book experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Successfully booked experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"de537d30-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.990301,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"de537d30-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173764,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"de537d30-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.468690075Z"}]},"request_id":"eff071f4-ad80-495b-ad7c-311c03a954b4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.2655013} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"de537d30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"de537d30-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/123da848-dd24-4057-9977-2090a2cea9e1? 200 45ms","method":"GET","requestID":"de537d30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/devices/123da848-dd24-4057-9977-2090a2cea9e1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"de5ad030-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902583,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"de5ad030-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173764,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"de5ad030-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.677923181Z"}]},"request_id":"f2a801e2-5d6e-4592-bca4-4ee2e820ccb0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.3154147} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"de5ad030-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"de5ad030-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/f80df867-4244-4619-abb6-9356e3d8dc64? 200 47ms","method":"GET","requestID":"de5ad030-7a5f-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/devices/f80df867-4244-4619-abb6-9356e3d8dc64?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Setting up experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Successfully locked booking for experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Attempting to update booking for experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Successfully updated booking for experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Successfully set up experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"de838de0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"de83dc00-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.827891,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de845130-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"de838de0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173764,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Successfully running experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"de838de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":35,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"de83dc00-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173764,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 48ms","method":"POST","requestID":"de83dc00-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:54992","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:54992","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.101502,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.037479,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"907b1f47-4c3c-4920-b2d5-8647507e9cbd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.586901} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"de845130-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"de845130-7a5f-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de845130-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/123da848-dd24-4057-9977-2090a2cea9e1/signaling 200 83ms","method":"POST","requestID":"de845130-7a5f-11ef-8bac-49f2f0d74a99","responseTime":83,"status":200,"url":"/devices/123da848-dd24-4057-9977-2090a2cea9e1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de91e5c0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.468690075Z"}]},"request_id":"a4236b13-6ba1-4861-b242-472338758db1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.6268916} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.677923181Z"}]},"request_id":"2c4447f2-e6c2-49e5-95f1-36db6ac6f6ad","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.6287565} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff3fc93f2-089b-4ccb-8024-eda62aff0471#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff3fc93f2-089b-4ccb-8024-eda62aff0471","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"5394dd0b-27a8-42b7-b53d-92df627bb2af","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.632346} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"649e92cd-6d3f-4678-aa57-5c45e874fe7f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.6329274} authorization-1 | {"level":"info","message":"POST /relations/query 200 15ms","method":"POST","requestID":"de838de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"de83dc00-7a5f-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/update 200 62ms","method":"POST","requestID":"21508d3c4f06efb13905536a3e1a220f","responseTime":62,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"de838de0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/123da848-dd24-4057-9977-2090a2cea9e1? 200 105ms","method":"GET","requestID":"de838de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":105,"status":200,"url":"/devices/123da848-dd24-4057-9977-2090a2cea9e1?"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"de83dc00-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/f80df867-4244-4619-abb6-9356e3d8dc64? 200 105ms","method":"GET","requestID":"de83dc00-7a5f-11ef-8bac-49f2f0d74a99","responseTime":105,"status":200,"url":"/devices/f80df867-4244-4619-abb6-9356e3d8dc64?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"583aadea-65ed-4ee0-8144-867dc3045cb9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.6507142} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.779083,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"de91e5c0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"de91e5c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de91e5c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f80df867-4244-4619-abb6-9356e3d8dc64/signaling 200 55ms","method":"POST","requestID":"de91e5c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":55,"status":200,"url":"/devices/f80df867-4244-4619-abb6-9356e3d8dc64/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 625ms","method":"POST","requestID":"21508d3c4f06efb13905536a3e1a220f","responseTime":625,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.670","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"21508d3c4f06efb13905536a3e1a220f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de9a7140-7a5f-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4","level":"info","message":"auth send jwt","requestID":"437cf0069f48c6093fbfd74f2f201756"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"437cf0069f48c6093fbfd74f2f201756","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4ffa08df-f20e-4d11-b00d-bd6b59140c92","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.7293258} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":28.911383,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"437cf0069f48c6093fbfd74f2f201756"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"de9a7140-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"de9a7140-7a5f-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.97993,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"437cf0069f48c6093fbfd74f2f201756","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173764,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"437cf0069f48c6093fbfd74f2f201756","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de9a7140-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/123da848-dd24-4057-9977-2090a2cea9e1/signaling 200 59ms","method":"POST","requestID":"de9a7140-7a5f-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/devices/123da848-dd24-4057-9977-2090a2cea9e1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dea3e720-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.468690075Z"}]},"request_id":"d7fec722-9ee4-492d-aea4-d46f89e292e6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.782467} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3046bfdf-6ef8-448f-b413-17128618c022","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.7918124} authorization-1 | {"level":"info","message":"POST /relations/query 200 16ms","method":"POST","requestID":"437cf0069f48c6093fbfd74f2f201756","responseTime":16,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.315079,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"dea3e720-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","object_type":"device","rebac_allow":false,"scope_allow":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":"dea3e720-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"437cf0069f48c6093fbfd74f2f201756"} gateway-1 | {"time_local":"24/Sep/2024:10:29:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/123da848-dd24-4057-9977-2090a2cea9e1? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.108","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"437cf0069f48c6093fbfd74f2f201756"} device-1 | {"level":"info","message":"GET /devices/123da848-dd24-4057-9977-2090a2cea9e1? 200 73ms","method":"GET","requestID":"437cf0069f48c6093fbfd74f2f201756","responseTime":73,"status":200,"url":"/devices/123da848-dd24-4057-9977-2090a2cea9e1?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dea3e720-7a5f-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4","level":"info","message":"auth send jwt","requestID":"347aefeafb280d7bea7d94d09814198f"} device-1 | {"level":"info","message":"POST /devices/f80df867-4244-4619-abb6-9356e3d8dc64/signaling 200 81ms","method":"POST","requestID":"dea3e720-7a5f-11ef-8bac-49f2f0d74a99","responseTime":81,"status":200,"url":"/devices/f80df867-4244-4619-abb6-9356e3d8dc64/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Building connection plan","requestID":"21508d3c4f06efb13905536a3e1a220f"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"e2d3fd6e-4e15-4d8c-b279-8f7a4ee592e7"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"cd288ed9-77fd-42f0-aa1f-5fec48c42bee"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"3640b8e5-d361-4104-9274-d6e70540ce7d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"21508d3c4f06efb13905536a3e1a220f"} 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/f80df867-4244-4619-abb6-9356e3d8dc64"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"21508d3c4f06efb13905536a3e1a220f"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"deb09150-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"347aefeafb280d7bea7d94d09814198f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"347aefeafb280d7bea7d94d09814198f","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.896516,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"deb09150-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173764,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"deb09150-7a5f-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":24.854128,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"347aefeafb280d7bea7d94d09814198f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173764,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2NH0.TbZUmm5PINH9x46T1C7xNaZaPvp5GrGy9HWYqV9tHN4"} authorization-1 | {"level":"info","message":"POST /authorize 200 28ms","method":"POST","requestID":"347aefeafb280d7bea7d94d09814198f","responseTime":28,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:20.677923181Z"}]},"request_id":"1f8996b9-9c4d-4790-940e-199a039bdee4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.9025133} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"347aefeafb280d7bea7d94d09814198f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"347aefeafb280d7bea7d94d09814198f"} gateway-1 | {"time_local":"24/Sep/2024:10:29:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f80df867-4244-4619-abb6-9356e3d8dc64? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.101","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"347aefeafb280d7bea7d94d09814198f"} device-1 | {"level":"info","message":"GET /devices/f80df867-4244-4619-abb6-9356e3d8dc64? 200 67ms","method":"GET","requestID":"347aefeafb280d7bea7d94d09814198f","responseTime":67,"status":200,"url":"/devices/f80df867-4244-4619-abb6-9356e3d8dc64?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"5a776b76-7191-45f4-b996-e3a74a72fd40","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.947031} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e923b395-268c-4612-a838-05cee1a24af6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173764.9476476} authorization-1 | {"level":"info","message":"POST /relations/update 200 80ms","method":"POST","requestID":"deb09150-7a5f-11ef-8bac-49f2f0d74a99","responseTime":80,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"deb09150-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"deb09150-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685'","requestID":"deb09150-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685'","requestID":"deb09150-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"deb09150-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 203ms","method":"POST","requestID":"deb09150-7a5f-11ef-8bac-49f2f0d74a99","responseTime":203,"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":"deb09150-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685","device":"f80df867-4244-4619-abb6-9356e3d8dc64","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 | {"device":"f80df867-4244-4619-abb6-9356e3d8dc64","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f80df867-4244-4619-abb6-9356e3d8dc64","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"21508d3c4f06efb13905536a3e1a220f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"def9f660-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:25Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":30.179765,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:25Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d477a8c4-ac41-479e-a1ad-483dd29feba9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173765.3248549} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"def9f660-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"def9f660-7a5f-11ef-8bac-49f2f0d74a99","responseTime":35,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"def9f660-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/123da848-dd24-4057-9977-2090a2cea9e1/signaling 200 45ms","method":"POST","requestID":"def9f660-7a5f-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/devices/123da848-dd24-4057-9977-2090a2cea9e1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"df014960-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:25Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.206527,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:25Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"acbc6e86-5e22-47b1-8df0-9c122ee45fcf","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173765.371708} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"df014960-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 36ms","method":"POST","requestID":"df014960-7a5f-11ef-8bac-49f2f0d74a99","responseTime":36,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"df014960-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f80df867-4244-4619-abb6-9356e3d8dc64/signaling 200 44ms","method":"POST","requestID":"df014960-7a5f-11ef-8bac-49f2f0d74a99","responseTime":44,"status":200,"url":"/devices/f80df867-4244-4619-abb6-9356e3d8dc64/signaling"} device-1 | {"device":"123da848-dd24-4057-9977-2090a2cea9e1","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":"94b2d1c1-3091-4ada-a9af-02406a20e685","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 222523561444639634 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:UkgD\r\na=ice-pwd:Moqks4vi/OEjQ8F1EQU+ZEIg\r\na=ice-options:trickle\r\na=fingerprint:sha-256 86:2D:E4:7D:D2:D2:D2:1C:5B:79:DF:AF:F1:0E:9E:38:14:94:D6:97:02:6A:43:61:9A:27:52:B8:63:09:A2:64\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"f80df867-4244-4619-abb6-9356e3d8dc64","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"123da848-dd24-4057-9977-2090a2cea9e1","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":"123da848-dd24-4057-9977-2090a2cea9e1","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":"123da848-dd24-4057-9977-2090a2cea9e1","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":"f80df867-4244-4619-abb6-9356e3d8dc64","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2564200972 1 udp 2113937151 b8344f00-f1c2-4812-955b-16b2ce33ca91.local 43604 typ host generation 0 ufrag UkgD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f80df867-4244-4619-abb6-9356e3d8dc64","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:201145119 1 udp 1677729535 141.24.211.56 43604 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag UkgD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f80df867-4244-4619-abb6-9356e3d8dc64","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3050406125 1 udp 33562623 141.24.210.113 50110 typ relay raddr 141.24.211.56 rport 43604 generation 0 ufrag UkgD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f80df867-4244-4619-abb6-9356e3d8dc64","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/94b2d1c1-3091-4ada-a9af-02406a20e685' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"94b2d1c1-3091-4ada-a9af-02406a20e685","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"13d958ca05e81a4e69cc3f2d80cbd25d","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":"13d958ca05e81a4e69cc3f2d80cbd25d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"device":"f80df867-4244-4619-abb6-9356e3d8dc64","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":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685"}}},"level":"info","message":"received a callback","requestID":"13d958ca05e81a4e69cc3f2d80cbd25d"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.058","http_referrer":"","http_user_agent":"node-fetch","requestID":"13d958ca05e81a4e69cc3f2d80cbd25d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 43ms","method":"POST","requestID":"13d958ca05e81a4e69cc3f2d80cbd25d","responseTime":43,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"94b2d1c1-3091-4ada-a9af-02406a20e685","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"123da848-dd24-4057-9977-2090a2cea9e1","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":"123da848-dd24-4057-9977-2090a2cea9e1","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":"f80df867-4244-4619-abb6-9356e3d8dc64","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"94b2d1c1-3091-4ada-a9af-02406a20e685","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/94b2d1c1-3091-4ada-a9af-02406a20e685' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"94b2d1c1-3091-4ada-a9af-02406a20e685","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"29522b417f0dbc51e690e26e85920c60","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":"29522b417f0dbc51e690e26e85920c60","responseTime":1,"status":200,"url":"/auth"} 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/f80df867-4244-4619-abb6-9356e3d8dc64"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685"}}},"level":"info","message":"received a callback","requestID":"29522b417f0dbc51e690e26e85920c60"} device-1 | {"device":"f80df867-4244-4619-abb6-9356e3d8dc64","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e051e540-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:27Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.884154,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:27Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F94b2d1c1-3091-4ada-a9af-02406a20e685","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9c1834e-9da0-4cf1-ae52-2f36db1b9715","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173767.5792613} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e051e540-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685","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":"e051e540-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e051e540-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685 200 46ms","method":"GET","requestID":"e051e540-7a5f-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 186ms","method":"POST","requestID":"29522b417f0dbc51e690e26e85920c60","responseTime":186,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e0682c60-7a5f-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.235","http_referrer":"","http_user_agent":"node-fetch","requestID":"29522b417f0dbc51e690e26e85920c60"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:27Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.317021,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:27Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"95ee35a0-8e06-49b7-8d6d-ee83c60593fe","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173767.7235944} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e0682c60-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","object_type":"device","rebac_allow":false,"scope_allow":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":"e0682c60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e0682c60-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f80df867-4244-4619-abb6-9356e3d8dc64/signaling 200 50ms","method":"POST","requestID":"e0682c60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/devices/f80df867-4244-4619-abb6-9356e3d8dc64/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e07069c0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:27Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5f084e7-d4d1-4db3-b129-e5ccb324b680","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173767.8059707} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":36.065301,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e07069c0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 78ms","method":"POST","requestID":"e07069c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":78,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e07069c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/123da848-dd24-4057-9977-2090a2cea9e1/signaling 200 93ms","method":"POST","requestID":"e07069c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":93,"status":200,"url":"/devices/123da848-dd24-4057-9977-2090a2cea9e1/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2OH0.h3B97KzSteyhE8QTI5BT-XnlQSJdLXMSAS5RenQ8M20","level":"info","message":"auth send jwt","requestID":"fc8e5dcd786971b7e665d7987f25f263"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fc8e5dcd786971b7e665d7987f25f263","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471","requestID":"fc8e5dcd786971b7e665d7987f25f263"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:28Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.07503,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fc8e5dcd786971b7e665d7987f25f263","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173768,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2OH0.h3B97KzSteyhE8QTI5BT-XnlQSJdLXMSAS5RenQ8M20"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fc8e5dcd786971b7e665d7987f25f263","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:29:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471 HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fc8e5dcd786971b7e665d7987f25f263"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471","requestID":"fc8e5dcd786971b7e665d7987f25f263"} experiment-1 | {"level":"info","message":"GET /experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471 200 45ms","method":"GET","requestID":"fc8e5dcd786971b7e665d7987f25f263","responseTime":45,"status":200,"url":"/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2OH0.h3B97KzSteyhE8QTI5BT-XnlQSJdLXMSAS5RenQ8M20","level":"info","message":"auth send jwt","requestID":"11f5c13d453da9a84e6bf92f982c8b0c"} authentication-1 | {"level":"info","message":"GET /auth 200 31ms","method":"GET","requestID":"11f5c13d453da9a84e6bf92f982c8b0c","responseTime":31,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471","requestID":"11f5c13d453da9a84e6bf92f982c8b0c"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:28Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.128407,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"11f5c13d453da9a84e6bf92f982c8b0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173768,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2OH0.h3B97KzSteyhE8QTI5BT-XnlQSJdLXMSAS5RenQ8M20"} authorization-1 | {"level":"info","message":"POST /authorize 200 45ms","method":"POST","requestID":"11f5c13d453da9a84e6bf92f982c8b0c","responseTime":45,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Attempting to finish experiment","requestID":"11f5c13d453da9a84e6bf92f982c8b0c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e0facf70-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:28Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.015253,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e0facf70-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173768,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2OH0.h3B97KzSteyhE8QTI5BT-XnlQSJdLXMSAS5RenQ8M20"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"e0facf70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F94b2d1c1-3091-4ada-a9af-02406a20e685': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F94b2d1c1-3091-4ada-a9af-02406a20e685","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"ab012226-81cb-47c1-9833-e8841a3ae4a2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173768.7831745} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc182ccd-9055-4e8a-bca6-1c7af0b3126d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173768.8087094} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685","device":"f80df867-4244-4619-abb6-9356e3d8dc64","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"123da848-dd24-4057-9977-2090a2cea9e1","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":"123da848-dd24-4057-9977-2090a2cea9e1","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":"123da848-dd24-4057-9977-2090a2cea9e1","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/94b2d1c1-3091-4ada-a9af-02406a20e685' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"94b2d1c1-3091-4ada-a9af-02406a20e685","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /relations/update 200 35ms","method":"POST","requestID":"e0facf70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":35,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"287651b71b991e88075289ae4c681b86","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":"287651b71b991e88075289ae4c681b86","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"07f4b921eb714796d005539a79a481a0","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":"07f4b921eb714796d005539a79a481a0","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e0facf70-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685 204 140ms","method":"DELETE","requestID":"e0facf70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":140,"status":204,"url":"/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685"} 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/f80df867-4244-4619-abb6-9356e3d8dc64"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685"}}},"level":"info","message":"received a callback","requestID":"287651b71b991e88075289ae4c681b86"} 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":"connected","url":"http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/94b2d1c1-3091-4ada-a9af-02406a20e685"}}},"level":"info","message":"received a callback","requestID":"07f4b921eb714796d005539a79a481a0"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"},"level":"info","message":"Successfully finished experiment","requestID":"11f5c13d453da9a84e6bf92f982c8b0c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e124ecb0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:28Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.54471,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:28Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff80df867-4244-4619-abb6-9356e3d8dc64","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a109b55f-5058-4f42-a7d5-65584bd4dfc7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173768.961723} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e124ecb0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64","object_type":"device","rebac_allow":false,"scope_allow":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":"e124ecb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e124ecb0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f80df867-4244-4619-abb6-9356e3d8dc64/signaling 200 15ms","method":"POST","requestID":"e124ecb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/devices/f80df867-4244-4619-abb6-9356e3d8dc64/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e127abd0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:29Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.096062,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:29Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F123da848-dd24-4057-9977-2090a2cea9e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcbbb9a7-09fc-4a45-9e43-c4815865272b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.006373} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e127abd0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/123da848-dd24-4057-9977-2090a2cea9e1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 36ms","method":"POST","requestID":"e127abd0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":36,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff3fc93f2-089b-4ccb-8024-eda62aff0471': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff3fc93f2-089b-4ccb-8024-eda62aff0471","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"64d536a2-8e8d-49f3-ba43-9a4de5d705d5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.0158134} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f140a837-4681-428b-866d-6c2f66c402b8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.0170867} authorization-1 | {"level":"info","message":"POST /relations/update 200 67ms","method":"POST","requestID":"11f5c13d453da9a84e6bf92f982c8b0c","responseTime":67,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e127abd0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/123da848-dd24-4057-9977-2090a2cea9e1/signaling 200 90ms","method":"POST","requestID":"e127abd0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":90,"status":200,"url":"/devices/123da848-dd24-4057-9977-2090a2cea9e1/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471","requestID":"11f5c13d453da9a84e6bf92f982c8b0c"} gateway-1 | {"time_local":"24/Sep/2024:10:29:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.661","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"11f5c13d453da9a84e6bf92f982c8b0c"} gateway-1 | {"time_local":"24/Sep/2024:10:29:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2924","request_time":"6.346","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"90f703544135d3843d2bd3f69a06e1db"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2OX0.RlsZL_bJPkTqdguLTsMlDHuSx8o_maJAJ3hW9pe5waY","level":"info","message":"auth send jwt","requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"DELETE /experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471 204 637ms","method":"DELETE","requestID":"11f5c13d453da9a84e6bf92f982c8b0c","responseTime":637,"status":204,"url":"/experiments/f3fc93f2-089b-4ccb-8024-eda62aff0471"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 435ms","method":"POST","requestID":"287651b71b991e88075289ae4c681b86","responseTime":435,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99"} gateway-1 | {"time_local":"24/Sep/2024:10:29:29 +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.449","http_referrer":"","http_user_agent":"node-fetch","requestID":"287651b71b991e88075289ae4c681b86"} gateway-1 | {"time_local":"24/Sep/2024:10:29:29 +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.473","http_referrer":"","http_user_agent":"node-fetch","requestID":"07f4b921eb714796d005539a79a481a0"} gateway-1 | {"time_local":"24/Sep/2024:10:29:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"5.393","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":"0f6451c346d108a349c22015b9abc51e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 382ms","method":"POST","requestID":"07f4b921eb714796d005539a79a481a0","responseTime":382,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:29Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.880826,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173769,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2OX0.RlsZL_bJPkTqdguLTsMlDHuSx8o_maJAJ3hW9pe5waY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99","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/123da848-dd24-4057-9977-2090a2cea9e1' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f80df867-4244-4619-abb6-9356e3d8dc64' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d160a983-4425-4465-a320-d94e5a503e72","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.3971674} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f316c1eb-c0dc-4764-8258-b1df6bb916b9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.405143} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"7c9a138d-19ff-4cd6-999d-22622b4e5ba5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.4485493} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b219f237-aac3-4a0b-be11-313a90f16a12","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.44977} authorization-1 | {"level":"info","message":"POST /relations/update 200 44ms","method":"POST","requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99","responseTime":44,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.448523624Z"}]},"request_id":"4f26f51d-6536-4ef2-acd4-a655b4fd59e6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.4811096} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99","responseTime":28,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:29:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.230","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99"} device-1 | {"level":"info","message":"POST /devices? 201 223ms","method":"POST","requestID":"a4ef6ad9fbd9f6ad0505bc620b824f99","responseTime":223,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2OX0.RlsZL_bJPkTqdguLTsMlDHuSx8o_maJAJ3hW9pe5waY","level":"info","message":"auth send jwt","requestID":"dd4dbd566ea7ecc14c3e564a9dd13273"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"dd4dbd566ea7ecc14c3e564a9dd13273","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:29Z"} device-1 | {"level":"info","message":"postDevices called","requestID":"dd4dbd566ea7ecc14c3e564a9dd13273"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.985071,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"dd4dbd566ea7ecc14c3e564a9dd13273","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173769,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc2OX0.RlsZL_bJPkTqdguLTsMlDHuSx8o_maJAJ3hW9pe5waY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dd4dbd566ea7ecc14c3e564a9dd13273","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c0f2fb2b-9933-4cce-a7a8-79538d7f3df9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.5470912} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd4dbd566ea7ecc14c3e564a9dd13273","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9eb11a2c-5ff1-4c06-a02b-1de4fa60a5b2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.5785782} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"dd4dbd566ea7ecc14c3e564a9dd13273","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"80a8b8ae-de68-432f-ae4b-15aace0eb6c4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.6293817} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2ebe3fc7-a947-44b9-b2a2-7eb8526b67f5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.6307216} authorization-1 | {"level":"info","message":"POST /relations/update 200 51ms","method":"POST","requestID":"dd4dbd566ea7ecc14c3e564a9dd13273","responseTime":51,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.629354244Z"}]},"request_id":"36378001-16f5-4ec9-ab32-82bb186c2389","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173769.640391} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"dd4dbd566ea7ecc14c3e564a9dd13273","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dd4dbd566ea7ecc14c3e564a9dd13273"} gateway-1 | {"time_local":"24/Sep/2024:10:29:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd4dbd566ea7ecc14c3e564a9dd13273"} device-1 | {"level":"info","message":"POST /devices? 201 151ms","method":"POST","requestID":"dd4dbd566ea7ecc14c3e564a9dd13273","responseTime":151,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k","level":"info","message":"auth send jwt","requestID":"139c692559dbe70e37a12741524421e4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"139c692559dbe70e37a12741524421e4","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.962333,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"139c692559dbe70e37a12741524421e4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"139c692559dbe70e37a12741524421e4","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"139c692559dbe70e37a12741524421e4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k","level":"info","message":"auth send jwt","requestID":"313be76c8fba2459c76ce49c60602a6b"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"313be76c8fba2459c76ce49c60602a6b"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"313be76c8fba2459c76ce49c60602a6b","responseTime":8,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.980077,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"313be76c8fba2459c76ce49c60602a6b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"313be76c8fba2459c76ce49c60602a6b","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.629354244Z"}]},"request_id":"2645dee1-01f6-42de-9eef-3f26a42cfff3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173771.2643428} authorization-1 | {"level":"info","message":"POST /relations/query 200 17ms","method":"POST","requestID":"139c692559dbe70e37a12741524421e4","responseTime":17,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d9280ac-4fa0-48c7-acad-e776f672b3eb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173771.2767608} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.448523624Z"}]},"request_id":"2ac6728a-9dd5-489f-81eb-48fed1bb36fb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173771.3101945} authorization-1 | {"level":"info","message":"POST /relations/update 200 39ms","method":"POST","requestID":"139c692559dbe70e37a12741524421e4","responseTime":39,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 21ms","method":"POST","requestID":"313be76c8fba2459c76ce49c60602a6b","responseTime":21,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.629354244Z"}]},"request_id":"57517496-73d9-4504-8ed1-0982d527c7a6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173771.3712084} authorization-1 | {"level":"info","message":"POST /relations/query 200 44ms","method":"POST","requestID":"139c692559dbe70e37a12741524421e4","responseTime":44,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"010fcdd8-3003-4ace-a959-3c175c44d059","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173771.3739948} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"139c692559dbe70e37a12741524421e4"} gateway-1 | {"time_local":"24/Sep/2024:10:29:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.223","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"139c692559dbe70e37a12741524421e4"} device-1 | {"level":"info","message":"PATCH /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b 200 218ms","method":"PATCH","requestID":"139c692559dbe70e37a12741524421e4","responseTime":218,"status":200,"url":"/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k","level":"info","message":"auth send jwt","requestID":"a722688b8314c1c8bb4e202bf4446e52"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a722688b8314c1c8bb4e202bf4446e52"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"a722688b8314c1c8bb4e202bf4446e52","responseTime":9,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"313be76c8fba2459c76ce49c60602a6b","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.969163,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a722688b8314c1c8bb4e202bf4446e52","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"a722688b8314c1c8bb4e202bf4446e52","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.448523624Z"}]},"request_id":"14f81d59-e1e5-46fc-b4e2-edb859c919e6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173771.448648} authorization-1 | {"level":"info","message":"POST /relations/query 200 40ms","method":"POST","requestID":"313be76c8fba2459c76ce49c60602a6b","responseTime":40,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"313be76c8fba2459c76ce49c60602a6b"} gateway-1 | {"time_local":"24/Sep/2024:10:29:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.283","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"313be76c8fba2459c76ce49c60602a6b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k","level":"info","message":"auth send jwt","requestID":"057d70b4e125e3a66d14e25ce11be331"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"057d70b4e125e3a66d14e25ce11be331","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"PATCH /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d 200 241ms","method":"PATCH","requestID":"313be76c8fba2459c76ce49c60602a6b","responseTime":241,"status":200,"url":"/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"057d70b4e125e3a66d14e25ce11be331"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.905738,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:31Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a722688b8314c1c8bb4e202bf4446e52"} gateway-1 | {"time_local":"24/Sep/2024:10:29:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.127","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a722688b8314c1c8bb4e202bf4446e52"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"057d70b4e125e3a66d14e25ce11be331","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} device-1 | {"level":"info","message":"POST /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/websocket 200 123ms","method":"POST","requestID":"a722688b8314c1c8bb4e202bf4446e52","responseTime":123,"status":200,"url":"/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/websocket"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"057d70b4e125e3a66d14e25ce11be331","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"057d70b4e125e3a66d14e25ce11be331"} gateway-1 | {"time_local":"24/Sep/2024:10:29:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.055","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"057d70b4e125e3a66d14e25ce11be331"} device-1 | {"level":"info","message":"POST /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/websocket 200 50ms","method":"POST","requestID":"057d70b4e125e3a66d14e25ce11be331","responseTime":50,"status":200,"url":"/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k","level":"info","message":"auth send jwt","requestID":"0608a1476a2680b92036203b67c7665d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0608a1476a2680b92036203b67c7665d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0608a1476a2680b92036203b67c7665d"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.910958,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0608a1476a2680b92036203b67c7665d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0608a1476a2680b92036203b67c7665d","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.448523624Z"}]},"request_id":"055a135f-2181-4d9d-885a-ec6cb5da3b3e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173771.6345744} authorization-1 | {"level":"info","message":"POST /relations/query 200 40ms","method":"POST","requestID":"0608a1476a2680b92036203b67c7665d","responseTime":40,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0608a1476a2680b92036203b67c7665d"} gateway-1 | {"time_local":"24/Sep/2024:10:29:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0608a1476a2680b92036203b67c7665d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k","level":"info","message":"auth send jwt","requestID":"214a80804e849912f856621017225c23"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"214a80804e849912f856621017225c23","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d? 200 61ms","method":"GET","requestID":"0608a1476a2680b92036203b67c7665d","responseTime":61,"status":200,"url":"/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"214a80804e849912f856621017225c23"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.961411,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"214a80804e849912f856621017225c23","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"214a80804e849912f856621017225c23","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.629354244Z"}]},"request_id":"35c4a49e-df65-4364-bf20-a80a69845ec9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173771.7385385} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"214a80804e849912f856621017225c23","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"214a80804e849912f856621017225c23"} device-1 | {"level":"info","message":"GET /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b? 200 24ms","method":"GET","requestID":"214a80804e849912f856621017225c23","responseTime":24,"status":200,"url":"/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.069","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"214a80804e849912f856621017225c23"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k","level":"info","message":"auth send jwt","requestID":"cd2c3d22338e976736e245c1a862c98b"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"cd2c3d22338e976736e245c1a862c98b"} authentication-1 | {"level":"info","message":"GET /auth 200 33ms","method":"GET","requestID":"cd2c3d22338e976736e245c1a862c98b","responseTime":33,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.926913,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cd2c3d22338e976736e245c1a862c98b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cd2c3d22338e976736e245c1a862c98b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Attempting to run experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Attempting to book experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Successfully booked experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2e8e3d0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.916492,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e2e8e3d0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e2e8e3d0-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.448523624Z"}]},"request_id":"086673b3-c385-4821-9afb-33cd1972415c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173771.9287257} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"e2e8e3d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2e8e3d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d? 200 17ms","method":"GET","requestID":"e2e8e3d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2ec6640-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":25.141591,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e2ec6640-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"e2ec6640-7a5f-11ef-8bac-49f2f0d74a99","responseTime":32,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.629354244Z"}]},"request_id":"59714f05-8640-4f81-9049-ea51527e3a88","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173771.9757957} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"e2ec6640-7a5f-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2ec6640-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Setting up experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} device-1 | {"level":"info","message":"GET /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b? 200 96ms","method":"GET","requestID":"e2ec6640-7a5f-11ef-8bac-49f2f0d74a99","responseTime":96,"status":200,"url":"/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Successfully locked booking for experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Attempting to update booking for experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Successfully updated booking for experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Successfully set up experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3274c60-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e3279a80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e3280fb0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"client_addr":"127.0.0.1:50114","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.445994,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e3274c60-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Successfully running experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} authorization-1 | {"level":"info","message":"POST /authorize 200 62ms","method":"POST","requestID":"e3274c60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":62,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56926","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.448523624Z"}]},"request_id":"da57de3a-dcc7-4086-b26c-86952f1cca92","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.3969004} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e3274c60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.06507,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e3279a80-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 22ms","method":"POST","requestID":"e3279a80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":22,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56926","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.129498,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ab9f57b-d48e-4098-9741-8c42ec862b55","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.3999362} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e3280fb0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 23ms","method":"POST","requestID":"e3280fb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":23,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.629354244Z"}]},"request_id":"3df7aa10-0b1c-4ce2-9828-678aadfaa83e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.4084144} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e3279a80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3274c60-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d? 200 85ms","method":"GET","requestID":"e3274c60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":85,"status":200,"url":"/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc9237ce3-d425-4a59-993d-96a12504d968#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc9237ce3-d425-4a59-993d-96a12504d968","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"1c1d770d-204d-4205-bfa0-f06f4bc89a25","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.4445744} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c444fc4e-bf8a-475e-a1b3-7acd96a6fa4c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.4461355} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e3280fb0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/signaling 200 117ms","method":"POST","requestID":"e3280fb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":117,"status":200,"url":"/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e3279a80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b? 200 123ms","method":"GET","requestID":"e3279a80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":123,"status":200,"url":"/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e33a8640-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e33afb70-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/update 200 67ms","method":"POST","requestID":"cd2c3d22338e976736e245c1a862c98b","responseTime":67,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"cd2c3d22338e976736e245c1a862c98b"} authorization-1 | {"client_addr":"127.0.0.1:56926","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"client_addr":"127.0.0.1:56926","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.403427,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df7b5127-9470-4835-9fdc-d19500d371a4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.4727356} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f074c01-72a6-4f7a-a1fe-dcbdec524f09","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.4765763} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e33a8640-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","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 698ms","method":"POST","requestID":"cd2c3d22338e976736e245c1a862c98b","responseTime":698,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"e33a8640-7a5f-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.562799,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:32Z"} gateway-1 | {"time_local":"24/Sep/2024:10:29:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"785","request_time":"0.728","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd2c3d22338e976736e245c1a862c98b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3Mn0.jDs762cPNcrWfF-aslHZfvnJya-544xWYHkY1byI0BQ","level":"info","message":"auth send jwt","requestID":"573f1fd57e271d5a37d52eea50a2e445"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"573f1fd57e271d5a37d52eea50a2e445","responseTime":29,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e33afb70-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","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":"e33a8640-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 45ms","method":"POST","requestID":"e33afb70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/signaling 200 66ms","method":"POST","requestID":"e33a8640-7a5f-11ef-8bac-49f2f0d74a99","responseTime":66,"status":200,"url":"/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"573f1fd57e271d5a37d52eea50a2e445"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:32Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e33afb70-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.047924,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:32Z"} device-1 | {"level":"info","message":"POST /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/signaling 200 134ms","method":"POST","requestID":"e33afb70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":134,"status":200,"url":"/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"573f1fd57e271d5a37d52eea50a2e445","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173772,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3Mn0.jDs762cPNcrWfF-aslHZfvnJya-544xWYHkY1byI0BQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"573f1fd57e271d5a37d52eea50a2e445","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e35205e0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.448523624Z"}]},"request_id":"e2a72957-74d0-49b1-a8d9-b9c7f2114771","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.6126652} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"573f1fd57e271d5a37d52eea50a2e445","responseTime":10,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f272a057-6e6c-40c3-92b1-d005fa51dd93","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.6183274} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.759254,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e35205e0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"e35205e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"573f1fd57e271d5a37d52eea50a2e445"} device-1 | {"level":"info","message":"GET /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d? 200 105ms","method":"GET","requestID":"573f1fd57e271d5a37d52eea50a2e445","responseTime":105,"status":200,"url":"/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"573f1fd57e271d5a37d52eea50a2e445"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e35205e0-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Building connection plan","requestID":"cd2c3d22338e976736e245c1a862c98b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"2c828203-6214-4081-8632-2709910e0b13"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"4878b188-9c8e-4f87-b53d-72cd19abd93b"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"50e39761-5610-4fdf-b429-fd0924ccc869"}]},"level":"info","message":"Built pairwise service configurations","requestID":"cd2c3d22338e976736e245c1a862c98b"} 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/88b834b1-e4ab-4f21-8656-efdf226b7b3d"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"cd2c3d22338e976736e245c1a862c98b"} device-1 | {"level":"info","message":"POST /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/signaling 200 60ms","method":"POST","requestID":"e35205e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":60,"status":200,"url":"/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e35b54b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.043429,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:32Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3Mn0.jDs762cPNcrWfF-aslHZfvnJya-544xWYHkY1byI0BQ","level":"info","message":"auth send jwt","requestID":"4c920f78594df69758eff4c7f624381a"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e35b54b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173771,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3MX0.W22PeBM8yvySxOuOEvmvgmmrDqqQmmdBJUwlqh2e-8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"e35b54b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 18ms","method":"GET","requestID":"4c920f78594df69758eff4c7f624381a","responseTime":18,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4c920f78594df69758eff4c7f624381a"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.231023,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"4c920f78594df69758eff4c7f624381a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173772,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3Mn0.jDs762cPNcrWfF-aslHZfvnJya-544xWYHkY1byI0BQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"4c920f78594df69758eff4c7f624381a","responseTime":38,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"95363efe-41ed-4329-b0c4-09506abeb199","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.7404487} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:29.629354244Z"}]},"request_id":"4e573378-37e8-4ab1-b600-beb70f1fed50","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.7411838} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"09fdbc3b-ec77-41a0-9f82-ed28ad7adfdf","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.742251} authorization-1 | {"level":"info","message":"POST /relations/query 200 47ms","method":"POST","requestID":"4c920f78594df69758eff4c7f624381a","responseTime":47,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/update 200 66ms","method":"POST","requestID":"e35b54b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":66,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4c920f78594df69758eff4c7f624381a"} device-1 | {"level":"info","message":"GET /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b? 200 109ms","method":"GET","requestID":"4c920f78594df69758eff4c7f624381a","responseTime":109,"status":200,"url":"/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.131","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c920f78594df69758eff4c7f624381a"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e35b54b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e35b54b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433'","requestID":"e35b54b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433'","requestID":"e35b54b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e35b54b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 153ms","method":"POST","requestID":"e35b54b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":153,"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":"e35b54b0-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"cd2c3d22338e976736e245c1a862c98b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e38746b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f155daf-2519-4399-8544-da23efa3f75a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173772.9853857} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.468777,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e38746b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"e38746b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e38746b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/signaling 200 40ms","method":"POST","requestID":"e38746b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e38dd660-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:33Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c2d9d153-f35c-46c3-8eb6-f8ef510c3619","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173773.0042374} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.281211,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e38dd660-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","object_type":"device","rebac_allow":false,"scope_allow":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":"e38dd660-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e38dd660-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/signaling 200 15ms","method":"POST","requestID":"e38dd660-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/signaling"} device-1 | {"device":"9aae35e0-50ab-4b71-935d-7cfb9d2be17b","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":"db6ad1a2-eb30-42f4-8f74-132f17432433","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"88b834b1-e4ab-4f21-8656-efdf226b7b3d","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":"88b834b1-e4ab-4f21-8656-efdf226b7b3d","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":"88b834b1-e4ab-4f21-8656-efdf226b7b3d","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":"db6ad1a2-eb30-42f4-8f74-132f17432433","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ca2438681378c349e7027e8137625d84","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":"ca2438681378c349e7027e8137625d84","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"88b834b1-e4ab-4f21-8656-efdf226b7b3d","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 | {"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/88b834b1-e4ab-4f21-8656-efdf226b7b3d"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433"}}},"level":"info","message":"received a callback","requestID":"ca2438681378c349e7027e8137625d84"} device-1 | {"device":"88b834b1-e4ab-4f21-8656-efdf226b7b3d","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/db6ad1a2-eb30-42f4-8f74-132f17432433' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"db6ad1a2-eb30-42f4-8f74-132f17432433","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9aae35e0-50ab-4b71-935d-7cfb9d2be17b","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":"9aae35e0-50ab-4b71-935d-7cfb9d2be17b","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":"9aae35e0-50ab-4b71-935d-7cfb9d2be17b","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 16ms","method":"POST","requestID":"ca2438681378c349e7027e8137625d84","responseTime":16,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.023","http_referrer":"","http_user_agent":"node-fetch","requestID":"ca2438681378c349e7027e8137625d84"} device-1 | {"device":"88b834b1-e4ab-4f21-8656-efdf226b7b3d","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 | {"data":{"peerconnection":"db6ad1a2-eb30-42f4-8f74-132f17432433","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9aae35e0-50ab-4b71-935d-7cfb9d2be17b","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":"9aae35e0-50ab-4b71-935d-7cfb9d2be17b","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":"db6ad1a2-eb30-42f4-8f74-132f17432433","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"88b834b1-e4ab-4f21-8656-efdf226b7b3d","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/db6ad1a2-eb30-42f4-8f74-132f17432433' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"db6ad1a2-eb30-42f4-8f74-132f17432433","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f10a5e6bcf21ddef521e2077ad3983ec","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":"f10a5e6bcf21ddef521e2077ad3983ec","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/88b834b1-e4ab-4f21-8656-efdf226b7b3d"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433"}}},"level":"info","message":"received a callback","requestID":"f10a5e6bcf21ddef521e2077ad3983ec"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e4cdf780-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":17.352091,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdb6ad1a2-eb30-42f4-8f74-132f17432433","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad948ba3-233c-4f2e-9528-3ff722bdbbb4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173775.109768} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e4cdf780-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433","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 40ms","method":"POST","requestID":"e4cdf780-7a5f-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e4cdf780-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433 200 79ms","method":"GET","requestID":"e4cdf780-7a5f-11ef-8bac-49f2f0d74a99","responseTime":79,"status":200,"url":"/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.162","http_referrer":"","http_user_agent":"node-fetch","requestID":"f10a5e6bcf21ddef521e2077ad3983ec"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e4e3a260-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 159ms","method":"POST","requestID":"f10a5e6bcf21ddef521e2077ad3983ec","responseTime":159,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"67ba8154-fed7-4e39-a7c7-6e196d9b356b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173775.250284} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.349366,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e4e3a260-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","object_type":"device","rebac_allow":false,"scope_allow":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":"e4e3a260-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e4e3a260-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/signaling 200 25ms","method":"POST","requestID":"e4e3a260-7a5f-11ef-8bac-49f2f0d74a99","responseTime":25,"status":200,"url":"/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e4e79a00-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.196151,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b2c8e56-d4d8-49ad-a196-a2138bb3fb88","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173775.269526} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e4e79a00-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","object_type":"device","rebac_allow":false,"scope_allow":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":"e4e79a00-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e4e79a00-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/signaling 200 43ms","method":"POST","requestID":"e4e79a00-7a5f-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3NX0.hx8C4lgbZ8nn8yQi00-ZVM_dhH-gBWTLmTi2aNhGQVI","level":"info","message":"auth send jwt","requestID":"7981c5a063aa7643c9a4e17fbbd8c600"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7981c5a063aa7643c9a4e17fbbd8c600","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c9237ce3-d425-4a59-993d-96a12504d968","requestID":"7981c5a063aa7643c9a4e17fbbd8c600"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.974166,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"7981c5a063aa7643c9a4e17fbbd8c600","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173775,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3NX0.hx8C4lgbZ8nn8yQi00-ZVM_dhH-gBWTLmTi2aNhGQVI"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c9237ce3-d425-4a59-993d-96a12504d968","requestID":"7981c5a063aa7643c9a4e17fbbd8c600"} gateway-1 | {"time_local":"24/Sep/2024:10:29:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c9237ce3-d425-4a59-993d-96a12504d968 HTTP/1.1","status": "200","body_bytes_sent":"858","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7981c5a063aa7643c9a4e17fbbd8c600"} experiment-1 | {"level":"info","message":"GET /experiments/c9237ce3-d425-4a59-993d-96a12504d968 200 15ms","method":"GET","requestID":"7981c5a063aa7643c9a4e17fbbd8c600","responseTime":15,"status":200,"url":"/experiments/c9237ce3-d425-4a59-993d-96a12504d968"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"7981c5a063aa7643c9a4e17fbbd8c600","responseTime":13,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3NX0.hx8C4lgbZ8nn8yQi00-ZVM_dhH-gBWTLmTi2aNhGQVI","level":"info","message":"auth send jwt","requestID":"a0b08d6d9e522837a2e1231aee4c18f4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a0b08d6d9e522837a2e1231aee4c18f4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c9237ce3-d425-4a59-993d-96a12504d968","requestID":"a0b08d6d9e522837a2e1231aee4c18f4"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.826547,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a0b08d6d9e522837a2e1231aee4c18f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173775,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3NX0.hx8C4lgbZ8nn8yQi00-ZVM_dhH-gBWTLmTi2aNhGQVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a0b08d6d9e522837a2e1231aee4c18f4","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Attempting to finish experiment","requestID":"a0b08d6d9e522837a2e1231aee4c18f4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e5276220-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.941724,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e5276220-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173775,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3NX0.hx8C4lgbZ8nn8yQi00-ZVM_dhH-gBWTLmTi2aNhGQVI"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"e5276220-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"device":"88b834b1-e4ab-4f21-8656-efdf226b7b3d","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":"88b834b1-e4ab-4f21-8656-efdf226b7b3d","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":"88b834b1-e4ab-4f21-8656-efdf226b7b3d","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/db6ad1a2-eb30-42f4-8f74-132f17432433' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"db6ad1a2-eb30-42f4-8f74-132f17432433","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} 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/88b834b1-e4ab-4f21-8656-efdf226b7b3d"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433"}}},"level":"info","message":"received a callback","requestID":"93d0c2dfb1fbe42865b136493f079381"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"93d0c2dfb1fbe42865b136493f079381","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":"93d0c2dfb1fbe42865b136493f079381","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d80cef1f5393e9687a46457114b862b9","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":"d80cef1f5393e9687a46457114b862b9","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"9aae35e0-50ab-4b71-935d-7cfb9d2be17b","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":"9aae35e0-50ab-4b71-935d-7cfb9d2be17b","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":"9aae35e0-50ab-4b71-935d-7cfb9d2be17b","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"}} 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/88b834b1-e4ab-4f21-8656-efdf226b7b3d"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433"}}},"level":"info","message":"received a callback","requestID":"d80cef1f5393e9687a46457114b862b9"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdb6ad1a2-eb30-42f4-8f74-132f17432433': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdb6ad1a2-eb30-42f4-8f74-132f17432433","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"0f28c501-9394-40e3-aeb9-323948a8066d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173775.776589} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e56c0652-0965-4237-b6ac-5800002cf140","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173775.7771854} authorization-1 | {"level":"info","message":"POST /relations/update 200 56ms","method":"POST","requestID":"e5276220-7a5f-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"db6ad1a2-eb30-42f4-8f74-132f17432433","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e5276220-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433 204 124ms","method":"DELETE","requestID":"e5276220-7a5f-11ef-8bac-49f2f0d74a99","responseTime":124,"status":204,"url":"/peerconnections/db6ad1a2-eb30-42f4-8f74-132f17432433"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c9237ce3-d425-4a59-993d-96a12504d968"},"level":"info","message":"Successfully finished experiment","requestID":"a0b08d6d9e522837a2e1231aee4c18f4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5412bb0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F88b834b1-e4ab-4f21-8656-efdf226b7b3d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fdfa21c9-2d5e-4a60-a743-f68de76d9a40","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173775.856956} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.125064,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e5412bb0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d","object_type":"device","rebac_allow":false,"scope_allow":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":"e5412bb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc9237ce3-d425-4a59-993d-96a12504d968': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc9237ce3-d425-4a59-993d-96a12504d968","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"03a25178-32c7-486a-8699-2d6e50857135","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173775.8649902} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"deaf047c-f834-4a93-8f0b-aa63046a9801","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173775.8662581} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5412bb0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/signaling 200 20ms","method":"POST","requestID":"e5412bb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":20,"status":200,"url":"/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"a0b08d6d9e522837a2e1231aee4c18f4","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e544fc40-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.970688,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:35Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aae35e0-50ab-4b71-935d-7cfb9d2be17b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f040924-8ec3-4a38-ba2f-6498c55b06ba","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173775.886663} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e544fc40-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b","object_type":"device","rebac_allow":false,"scope_allow":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":"e544fc40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e544fc40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/signaling 200 51ms","method":"POST","requestID":"e544fc40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c9237ce3-d425-4a59-993d-96a12504d968","requestID":"a0b08d6d9e522837a2e1231aee4c18f4"} experiment-1 | {"level":"info","message":"DELETE /experiments/c9237ce3-d425-4a59-993d-96a12504d968 204 341ms","method":"DELETE","requestID":"a0b08d6d9e522837a2e1231aee4c18f4","responseTime":341,"status":204,"url":"/experiments/c9237ce3-d425-4a59-993d-96a12504d968"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 279ms","method":"POST","requestID":"93d0c2dfb1fbe42865b136493f079381","responseTime":279,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.283","http_referrer":"","http_user_agent":"node-fetch","requestID":"93d0c2dfb1fbe42865b136493f079381"} gateway-1 | {"time_local":"24/Sep/2024:10:29:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"4.466","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"db3823880671c569259b3a6d8e189525"} gateway-1 | {"time_local":"24/Sep/2024:10:29:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"4.505","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c113c9c2606a0232fdaf8902c248bea5"} gateway-1 | {"time_local":"24/Sep/2024:10:29:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c9237ce3-d425-4a59-993d-96a12504d968 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.344","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a0b08d6d9e522837a2e1231aee4c18f4"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/88b834b1-e4ab-4f21-8656-efdf226b7b3d' closed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 285ms","method":"POST","requestID":"d80cef1f5393e9687a46457114b862b9","responseTime":285,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.290","http_referrer":"","http_user_agent":"node-fetch","requestID":"d80cef1f5393e9687a46457114b862b9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3Nn0.6akiFmWANWwVH36CAStGzDg1y6h5nym4cs5OhElgHpk","level":"info","message":"auth send jwt","requestID":"ceacd0842f37a6d33586d47eb9436b4f"} authentication-1 | {"level":"info","message":"GET /auth 200 42ms","method":"GET","requestID":"ceacd0842f37a6d33586d47eb9436b4f","responseTime":42,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ceacd0842f37a6d33586d47eb9436b4f"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9aae35e0-50ab-4b71-935d-7cfb9d2be17b' closed"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:36Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.957879,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ceacd0842f37a6d33586d47eb9436b4f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173776,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3Nn0.6akiFmWANWwVH36CAStGzDg1y6h5nym4cs5OhElgHpk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ceacd0842f37a6d33586d47eb9436b4f","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"95fe7ac6-e7aa-4ee5-81a0-7f81900bdccb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173776.1389031} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"ceacd0842f37a6d33586d47eb9436b4f","responseTime":9,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2036af0d-12d7-4a73-8ea3-05a6d44cd64c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173776.1765685} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"ceacd0842f37a6d33586d47eb9436b4f","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"5b922707-db51-44ad-8c8d-3bf01fd30dea","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173776.237092} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b933e13-8f89-4943-a6c2-0943484b428b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173776.237927} authorization-1 | {"level":"info","message":"POST /relations/update 200 71ms","method":"POST","requestID":"ceacd0842f37a6d33586d47eb9436b4f","responseTime":71,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:36.237059881Z"}]},"request_id":"07df927a-abfd-4958-9c4b-128f1ee6db27","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173776.2449958} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ceacd0842f37a6d33586d47eb9436b4f"} device-1 | {"level":"info","message":"POST /devices? 201 192ms","method":"POST","requestID":"ceacd0842f37a6d33586d47eb9436b4f","responseTime":192,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.237","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ceacd0842f37a6d33586d47eb9436b4f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3Nn0.6akiFmWANWwVH36CAStGzDg1y6h5nym4cs5OhElgHpk","level":"info","message":"auth send jwt","requestID":"a3fbe0f96fe0fea7da640d8c26cf9859"} device-1 | {"level":"info","message":"postDevices called","requestID":"a3fbe0f96fe0fea7da640d8c26cf9859"} authentication-1 | {"level":"info","message":"GET /auth 200 38ms","method":"GET","requestID":"a3fbe0f96fe0fea7da640d8c26cf9859","responseTime":38,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 54ms","method":"POST","requestID":"ceacd0842f37a6d33586d47eb9436b4f","responseTime":54,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:36Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.872289,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a3fbe0f96fe0fea7da640d8c26cf9859","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173776,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3Nn0.6akiFmWANWwVH36CAStGzDg1y6h5nym4cs5OhElgHpk"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a3fbe0f96fe0fea7da640d8c26cf9859","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c0206f68-944e-4cd1-a582-8a4a593c6aa0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173776.3738286} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a3fbe0f96fe0fea7da640d8c26cf9859","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02768071-484a-4a1d-9400-a21384416ddc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173776.405162} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"a3fbe0f96fe0fea7da640d8c26cf9859","responseTime":31,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"85cfc901-ce56-43d6-922a-4cf9815484e1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173776.421727} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a2db7ddd-a9c2-476f-8e02-e6d318e3a851","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173776.4248226} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"a3fbe0f96fe0fea7da640d8c26cf9859","responseTime":25,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:36.421698331Z"}]},"request_id":"a4de9a66-d507-4f12-8144-e6fec6ae2aa2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173776.434584} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a3fbe0f96fe0fea7da640d8c26cf9859"} device-1 | {"level":"info","message":"POST /devices? 201 145ms","method":"POST","requestID":"a3fbe0f96fe0fea7da640d8c26cf9859","responseTime":145,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a3fbe0f96fe0fea7da640d8c26cf9859"} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"a3fbe0f96fe0fea7da640d8c26cf9859","responseTime":31,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b6ad1e5134466d1e018220a6bfed484d","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":"b6ad1e5134466d1e018220a6bfed484d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:29:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/064c9ccf-5317-43e4-a841-f7977e2989fe/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":"b6ad1e5134466d1e018220a6bfed484d"} device-1 | {"level":"info","message":"OPTIONS /devices/064c9ccf-5317-43e4-a841-f7977e2989fe/websocket 200 1ms","method":"OPTIONS","requestID":"b6ad1e5134466d1e018220a6bfed484d","responseTime":1,"status":200,"url":"/devices/064c9ccf-5317-43e4-a841-f7977e2989fe/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3OX0.N6XKYJcOTbTbAHbujBqCz2eNfV34xGX9J5255AunLjE","level":"info","message":"auth send jwt","requestID":"c8ba5caba833563d13634d1240f7cfe6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c8ba5caba833563d13634d1240f7cfe6","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c8ba5caba833563d13634d1240f7cfe6"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:39Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.898114,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c8ba5caba833563d13634d1240f7cfe6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173779,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3OX0.N6XKYJcOTbTbAHbujBqCz2eNfV34xGX9J5255AunLjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"c8ba5caba833563d13634d1240f7cfe6","responseTime":29,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c8ba5caba833563d13634d1240f7cfe6"} gateway-1 | {"time_local":"24/Sep/2024:10:29:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/064c9ccf-5317-43e4-a841-f7977e2989fe/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.059","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":"c8ba5caba833563d13634d1240f7cfe6"} device-1 | {"level":"info","message":"POST /devices/064c9ccf-5317-43e4-a841-f7977e2989fe/websocket 200 54ms","method":"POST","requestID":"c8ba5caba833563d13634d1240f7cfe6","responseTime":54,"status":200,"url":"/devices/064c9ccf-5317-43e4-a841-f7977e2989fe/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5ac7f3e73d365490b12931563190e77a","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":"5ac7f3e73d365490b12931563190e77a","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:29:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/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":"5ac7f3e73d365490b12931563190e77a"} device-1 | {"level":"info","message":"OPTIONS /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/websocket 200 3ms","method":"OPTIONS","requestID":"5ac7f3e73d365490b12931563190e77a","responseTime":3,"status":200,"url":"/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3OX0.N6XKYJcOTbTbAHbujBqCz2eNfV34xGX9J5255AunLjE","level":"info","message":"auth send jwt","requestID":"466712c22ba26820b29a061d0db18fd3"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"466712c22ba26820b29a061d0db18fd3","responseTime":29,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"466712c22ba26820b29a061d0db18fd3"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:39Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.917279,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"466712c22ba26820b29a061d0db18fd3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173779,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3OX0.N6XKYJcOTbTbAHbujBqCz2eNfV34xGX9J5255AunLjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"466712c22ba26820b29a061d0db18fd3","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"466712c22ba26820b29a061d0db18fd3"} gateway-1 | {"time_local":"24/Sep/2024:10:29:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.100","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":"466712c22ba26820b29a061d0db18fd3"} device-1 | {"level":"info","message":"POST /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/websocket 200 69ms","method":"POST","requestID":"466712c22ba26820b29a061d0db18fd3","responseTime":69,"status":200,"url":"/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3OX0.N6XKYJcOTbTbAHbujBqCz2eNfV34xGX9J5255AunLjE","level":"info","message":"auth send jwt","requestID":"91fbfa6cf34e47dbbaa22a8b7964e0eb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"91fbfa6cf34e47dbbaa22a8b7964e0eb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"91fbfa6cf34e47dbbaa22a8b7964e0eb"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:39Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.869459,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"91fbfa6cf34e47dbbaa22a8b7964e0eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173779,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc3OX0.N6XKYJcOTbTbAHbujBqCz2eNfV34xGX9J5255AunLjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"91fbfa6cf34e47dbbaa22a8b7964e0eb","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:36.237059881Z"}]},"request_id":"28ffbfb3-d1bd-40f4-a427-9af4171fd539","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173779.9907615} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"91fbfa6cf34e47dbbaa22a8b7964e0eb"} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"91fbfa6cf34e47dbbaa22a8b7964e0eb","responseTime":28,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483? 200 42ms","method":"GET","requestID":"91fbfa6cf34e47dbbaa22a8b7964e0eb","responseTime":42,"status":200,"url":"/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91fbfa6cf34e47dbbaa22a8b7964e0eb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg","level":"info","message":"auth send jwt","requestID":"5c9f2dd805f0612d8434255d906a352e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5c9f2dd805f0612d8434255d906a352e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c9f2dd805f0612d8434255d906a352e"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.574431,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5c9f2dd805f0612d8434255d906a352e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173780,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 25ms","method":"POST","requestID":"5c9f2dd805f0612d8434255d906a352e","responseTime":25,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:36.421698331Z"}]},"request_id":"e83f3430-d8da-425f-8c15-9123d48acfc3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.1318016} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"5c9f2dd805f0612d8434255d906a352e","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c9f2dd805f0612d8434255d906a352e"} device-1 | {"level":"info","message":"GET /devices/064c9ccf-5317-43e4-a841-f7977e2989fe? 200 98ms","method":"GET","requestID":"5c9f2dd805f0612d8434255d906a352e","responseTime":98,"status":200,"url":"/devices/064c9ccf-5317-43e4-a841-f7977e2989fe?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/064c9ccf-5317-43e4-a841-f7977e2989fe? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.103","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5c9f2dd805f0612d8434255d906a352e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg","level":"info","message":"auth send jwt","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"78a6850d7d5f550a160168c5ea45f1c4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.910316,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"78a6850d7d5f550a160168c5ea45f1c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173780,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 22ms","method":"POST","requestID":"78a6850d7d5f550a160168c5ea45f1c4","responseTime":22,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Attempting to run experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Attempting to book experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Successfully booked experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7e65b10-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7e6a930-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.931624,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e7e65b10-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173780,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e7e65b10-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e7e6a930-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173780,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e7e6a930-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.082523,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:36.237059881Z"}]},"request_id":"478e0b83-efd9-4aa1-bfc2-a4efe898ab6b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.3055336} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e7e65b10-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:36.421698331Z"}]},"request_id":"c030322b-feea-4612-873d-3cf101f8132c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.331326} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e7e6a930-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7e65b10-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483? 200 50ms","method":"GET","requestID":"e7e65b10-7a5f-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7e6a930-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/064c9ccf-5317-43e4-a841-f7977e2989fe? 200 50ms","method":"GET","requestID":"e7e6a930-7a5f-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/devices/064c9ccf-5317-43e4-a841-f7977e2989fe?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Setting up experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Successfully set up experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7fffd90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e8044350-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.901101,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e7fffd90-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173780,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e7fffd90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e805c9f0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902926,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e8044350-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173780,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"e8044350-7a5f-11ef-8bac-49f2f0d74a99","responseTime":16,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:36.237059881Z"}]},"request_id":"8ca10ae7-753e-4b25-b0b3-74317522ab5b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.504779} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Successfully running experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} authorization-1 | {"level":"info","message":"POST /relations/query 200 15ms","method":"POST","requestID":"e7fffd90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F51b8de4a-529f-4ecd-899a-59a7515bec5d#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F51b8de4a-529f-4ecd-899a-59a7515bec5d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"e64dd656-41f8-46b4-8549-3460fab8a160","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.5485747} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e9de9a7d-d4aa-4ce9-9534-ee0443a0f4e1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.5498807} experiment-1 | {"data":{"experiment":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} authorization-1 | {"level":"info","message":"POST /relations/update 200 52ms","method":"POST","requestID":"78a6850d7d5f550a160168c5ea45f1c4","responseTime":52,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7fffd90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483? 200 134ms","method":"GET","requestID":"e7fffd90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":134,"status":200,"url":"/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483?"} experiment-1 | {"level":"info","message":"POST /experiments? 201 445ms","method":"POST","requestID":"78a6850d7d5f550a160168c5ea45f1c4","responseTime":445,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.448","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg","level":"info","message":"auth send jwt","requestID":"b9c583819ee1633fa347ceb753580970"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.371739,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b9c583819ee1633fa347ceb753580970","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01764b80-c5f3-4d83-8363-a88658c9405d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.5952158} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:36.421698331Z"}]},"request_id":"e6eabd28-b573-4e0e-b2e1-f0d64e5787a9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.5988638} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e805c9f0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 43ms","method":"POST","requestID":"e805c9f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"e8044350-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b9c583819ee1633fa347ceb753580970"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919846,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b9c583819ee1633fa347ceb753580970","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173780,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"b9c583819ee1633fa347ceb753580970","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e805c9f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/signaling 200 151ms","method":"POST","requestID":"e805c9f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":151,"status":200,"url":"/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e8044350-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/064c9ccf-5317-43e4-a841-f7977e2989fe? 200 162ms","method":"GET","requestID":"e8044350-7a5f-11ef-8bac-49f2f0d74a99","responseTime":162,"status":200,"url":"/devices/064c9ccf-5317-43e4-a841-f7977e2989fe?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e81d70a0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e81dbec0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:36.237059881Z"}]},"request_id":"3fedbc3f-5e17-4468-8440-ee2c99c33699","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.6538494} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f968221d-eb4b-449c-9567-a6c06935b28a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.6580746} authorization-1 | {"level":"info","message":"POST /relations/query 200 17ms","method":"POST","requestID":"b9c583819ee1633fa347ceb753580970","responseTime":17,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b9c583819ee1633fa347ceb753580970"} gateway-1 | {"time_local":"24/Sep/2024:10:29:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.069","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b9c583819ee1633fa347ceb753580970"} device-1 | {"level":"info","message":"GET /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483? 200 56ms","method":"GET","requestID":"b9c583819ee1633fa347ceb753580970","responseTime":56,"status":200,"url":"/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483?"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56922","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.089579,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.947034,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e81d70a0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 45ms","method":"POST","requestID":"e81d70a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f23c3b3d-5c02-4162-8283-e5ace928ba9c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.6939595} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e81dbec0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 39ms","method":"POST","requestID":"e81dbec0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg","level":"info","message":"auth send jwt","requestID":"3d1166286bb2ab16470262c5d99b1b3a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3d1166286bb2ab16470262c5d99b1b3a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3d1166286bb2ab16470262c5d99b1b3a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e81d70a0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/064c9ccf-5317-43e4-a841-f7977e2989fe/signaling 200 61ms","method":"POST","requestID":"e81d70a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":61,"status":200,"url":"/devices/064c9ccf-5317-43e4-a841-f7977e2989fe/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e81dbec0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":25.138859,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3d1166286bb2ab16470262c5d99b1b3a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173780,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"3d1166286bb2ab16470262c5d99b1b3a","responseTime":29,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/signaling 200 95ms","method":"POST","requestID":"e81dbec0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":95,"status":200,"url":"/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e82c64c0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:36.421698331Z"}]},"request_id":"c4564f06-f2f5-4ab8-861d-de3d2336f60d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.7557425} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0d796265-860f-4cc9-a298-0fac289ff5d5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.7561004} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3d1166286bb2ab16470262c5d99b1b3a"} gateway-1 | {"time_local":"24/Sep/2024:10:29:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/064c9ccf-5317-43e4-a841-f7977e2989fe? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d1166286bb2ab16470262c5d99b1b3a"} device-1 | {"level":"info","message":"GET /devices/064c9ccf-5317-43e4-a841-f7977e2989fe? 200 56ms","method":"GET","requestID":"3d1166286bb2ab16470262c5d99b1b3a","responseTime":56,"status":200,"url":"/devices/064c9ccf-5317-43e4-a841-f7977e2989fe?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"3d1166286bb2ab16470262c5d99b1b3a","responseTime":10,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.34313,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e82c64c0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"e82c64c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e82c64c0-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Building connection plan","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} 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":"9897a01d-09ec-438c-94ff-2849b9828775"},{"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":"5617639b-ef90-498e-a9ce-9cf13e9a2e71"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"5d85a7ff-66c5-4905-ae4d-8044415fc6c2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} 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/064c9ccf-5317-43e4-a841-f7977e2989fe"},{"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/22b9cf6e-d6de-4296-898d-68a3dea1a483"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} device-1 | {"level":"info","message":"POST /devices/064c9ccf-5317-43e4-a841-f7977e2989fe/signaling 200 53ms","method":"POST","requestID":"e82c64c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/devices/064c9ccf-5317-43e4-a841-f7977e2989fe/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e834c930-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":2.108747,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e834c930-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173780,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MH0.1d77mq67bsiHfpiMbU3tMvHyes1XBHfo6pUSVz6abNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 17ms","method":"POST","requestID":"e834c930-7a5f-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"18b5d3a4-8940-49b1-a65a-4df03719eced","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.8582268} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7b9ed3bd-4fb6-4350-a2d0-e7153e1d7991","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173780.8595934} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"e834c930-7a5f-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e834c930-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e834c930-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2'","requestID":"e834c930-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2'","requestID":"e834c930-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e834c930-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 75ms","method":"POST","requestID":"e834c930-7a5f-11ef-8bac-49f2f0d74a99","responseTime":75,"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":"e834c930-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2","device":"064c9ccf-5317-43e4-a841-f7977e2989fe","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/5abf44dd-d936-461d-bfad-6a5eaeb3afa2","device":"22b9cf6e-d6de-4296-898d-68a3dea1a483","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/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"78a6850d7d5f550a160168c5ea45f1c4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e8560cd0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.320165,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2238094d-1d93-4bbe-839d-b090e2f359fa","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173781.0510545} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e8560cd0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"e8560cd0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e8560cd0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/signaling 200 36ms","method":"POST","requestID":"e8560cd0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":36,"status":200,"url":"/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e85c0040-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"device":"22b9cf6e-d6de-4296-898d-68a3dea1a483","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"22b9cf6e-d6de-4296-898d-68a3dea1a483","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.503586,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c053b5a5-c69f-4143-bffd-12a5c9c8ef30","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173781.0665011} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e85c0040-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","object_type":"device","rebac_allow":false,"scope_allow":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":"e85c0040-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e85c0040-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/064c9ccf-5317-43e4-a841-f7977e2989fe/signaling 200 48ms","method":"POST","requestID":"e85c0040-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/devices/064c9ccf-5317-43e4-a841-f7977e2989fe/signaling"} device-1 | {"device":"064c9ccf-5317-43e4-a841-f7977e2989fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"064c9ccf-5317-43e4-a841-f7977e2989fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 4720163699810190512 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:i7uD\r\na=ice-pwd:B1i32KNliM3kN384TLnXgEc8\r\na=ice-options:trickle\r\na=fingerprint:sha-256 ED:8B:88:0C:B8:29:4E:9A:0D:5A:C8:CA:AF:02:BB:C9:21:EA:A7:26:A0:30:1B:C5:44:A6:5E:0F:E5:65:16:A0\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"22b9cf6e-d6de-4296-898d-68a3dea1a483","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 6077236224028262076 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:Qam3\r\na=ice-pwd:oYcXc1iZKpUu6D6YfYvcmwfl\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F4:66:74:B2:85:C3:E7:04:FC:3F:85:7A:D6:9E:58:29:F0:95:66:DF:BA:FB:8D:83:87:3F:C2:7F:E1:CA:09:E4\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"064c9ccf-5317-43e4-a841-f7977e2989fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2854597396 1 udp 2113937151 aa7d6938-6419-4d77-b3e9-6a90a11e635e.local 47247 typ host generation 0 ufrag i7uD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"22b9cf6e-d6de-4296-898d-68a3dea1a483","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:772331883 1 udp 1677729535 141.24.211.56 47247 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag i7uD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"22b9cf6e-d6de-4296-898d-68a3dea1a483","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2309296687 1 udp 2113937151 fad5965c-efee-4ea3-857c-4241df751526.local 49318 typ host generation 0 ufrag Qam3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"064c9ccf-5317-43e4-a841-f7977e2989fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:227047504 1 udp 1677729535 141.24.211.56 49318 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Qam3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"064c9ccf-5317-43e4-a841-f7977e2989fe","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/22b9cf6e-d6de-4296-898d-68a3dea1a483'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe'"} device-1 | {"device":"064c9ccf-5317-43e4-a841-f7977e2989fe","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/5abf44dd-d936-461d-bfad-6a5eaeb3afa2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5abf44dd-d936-461d-bfad-6a5eaeb3afa2","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"064c9ccf-5317-43e4-a841-f7977e2989fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"22b9cf6e-d6de-4296-898d-68a3dea1a483","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"022a66588d39a6fc040f2b2ee7ac9f4f","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":"022a66588d39a6fc040f2b2ee7ac9f4f","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","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/064c9ccf-5317-43e4-a841-f7977e2989fe"},{"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/22b9cf6e-d6de-4296-898d-68a3dea1a483"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2"}}},"level":"info","message":"received a callback","requestID":"022a66588d39a6fc040f2b2ee7ac9f4f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 15ms","method":"POST","requestID":"022a66588d39a6fc040f2b2ee7ac9f4f","responseTime":15,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29:41 +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.020","http_referrer":"","http_user_agent":"node-fetch","requestID":"022a66588d39a6fc040f2b2ee7ac9f4f"} device-1 | {"content":{"candidate":"candidate:2097506016 1 udp 33562623 141.24.210.113 57202 typ relay raddr 141.24.211.56 rport 47247 generation 0 ufrag i7uD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"22b9cf6e-d6de-4296-898d-68a3dea1a483","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"peerconnection":"5abf44dd-d936-461d-bfad-6a5eaeb3afa2","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"22b9cf6e-d6de-4296-898d-68a3dea1a483","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"064c9ccf-5317-43e4-a841-f7977e2989fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"5abf44dd-d936-461d-bfad-6a5eaeb3afa2","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"22b9cf6e-d6de-4296-898d-68a3dea1a483","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c7caed2b378b5e2480a9fccfd0857715","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":"c7caed2b378b5e2480a9fccfd0857715","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/064c9ccf-5317-43e4-a841-f7977e2989fe"},{"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/22b9cf6e-d6de-4296-898d-68a3dea1a483"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2"}}},"level":"info","message":"received a callback","requestID":"c7caed2b378b5e2480a9fccfd0857715"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5abf44dd-d936-461d-bfad-6a5eaeb3afa2","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e8975b90-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.035923,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5abf44dd-d936-461d-bfad-6a5eaeb3afa2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"03e0feac-135c-452b-9567-9396027b6c47","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173781.4543004} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e8975b90-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2","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 31ms","method":"POST","requestID":"e8975b90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"device":"064c9ccf-5317-43e4-a841-f7977e2989fe","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e8975b90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2 200 89ms","method":"GET","requestID":"e8975b90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":89,"status":200,"url":"/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2"} gateway-1 | {"time_local":"24/Sep/2024:10:29:41 +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":"c7caed2b378b5e2480a9fccfd0857715"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"c7caed2b378b5e2480a9fccfd0857715","responseTime":143,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e8aba6e0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.107127,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a7eb26c6-070d-4b7c-b393-8993d4bde5f0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173781.5881615} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e8aba6e0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","object_type":"device","rebac_allow":false,"scope_allow":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":"e8aba6e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MX0.IFSnMHsPdFDSbf3raKgM1tiwNAcBA45-8mzomnaC9u4","level":"info","message":"auth send jwt","requestID":"a78bce795021fa6ea81b049aff4e0df3"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"a78bce795021fa6ea81b049aff4e0df3","responseTime":29,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e8aba6e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/064c9ccf-5317-43e4-a841-f7977e2989fe/signaling 200 43ms","method":"POST","requestID":"e8aba6e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/devices/064c9ccf-5317-43e4-a841-f7977e2989fe/signaling"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d","requestID":"a78bce795021fa6ea81b049aff4e0df3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e8b96280-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":25.063722,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a78bce795021fa6ea81b049aff4e0df3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173781,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MX0.IFSnMHsPdFDSbf3raKgM1tiwNAcBA45-8mzomnaC9u4"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"a78bce795021fa6ea81b049aff4e0df3","responseTime":29,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"651abb86-33cf-4c88-8a43-3d137c9fb9c8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173781.6796253} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.482765,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e8b96280-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","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":"e8b96280-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/signaling 200 15ms","method":"POST","requestID":"e8b96280-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"e8b96280-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d","requestID":"a78bce795021fa6ea81b049aff4e0df3"} experiment-1 | {"level":"info","message":"GET /experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d 200 88ms","method":"GET","requestID":"a78bce795021fa6ea81b049aff4e0df3","responseTime":88,"status":200,"url":"/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"} gateway-1 | {"time_local":"24/Sep/2024:10:29:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a78bce795021fa6ea81b049aff4e0df3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MX0.IFSnMHsPdFDSbf3raKgM1tiwNAcBA45-8mzomnaC9u4","level":"info","message":"auth send jwt","requestID":"b1ec542352037bd763d47d18677a9c1c"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b1ec542352037bd763d47d18677a9c1c","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d","requestID":"b1ec542352037bd763d47d18677a9c1c"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":25.059549,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b1ec542352037bd763d47d18677a9c1c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173781,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MX0.IFSnMHsPdFDSbf3raKgM1tiwNAcBA45-8mzomnaC9u4"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"b1ec542352037bd763d47d18677a9c1c","responseTime":29,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Attempting to finish experiment","requestID":"b1ec542352037bd763d47d18677a9c1c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e8cff7c0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.068618,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e8cff7c0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173781,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4MX0.IFSnMHsPdFDSbf3raKgM1tiwNAcBA45-8mzomnaC9u4"} authorization-1 | {"level":"info","message":"POST /authorize 200 42ms","method":"POST","requestID":"e8cff7c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2","device":"064c9ccf-5317-43e4-a841-f7977e2989fe","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2","device":"22b9cf6e-d6de-4296-898d-68a3dea1a483","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5abf44dd-d936-461d-bfad-6a5eaeb3afa2': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5abf44dd-d936-461d-bfad-6a5eaeb3afa2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"3e45d506-e98c-4332-99b3-18d7ffb2bcb3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173781.9201052} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c69b8e1-be0f-45cb-9dea-b4b25f6cacab","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173781.9211192} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"e8cff7c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5abf44dd-d936-461d-bfad-6a5eaeb3afa2","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9ab1f27265dfcd2e760568747af83eea","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":"9ab1f27265dfcd2e760568747af83eea","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":"closed","url":"http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe"},{"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/22b9cf6e-d6de-4296-898d-68a3dea1a483"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2"}}},"level":"info","message":"received a callback","requestID":"9ab1f27265dfcd2e760568747af83eea"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e8cff7c0-7a5f-11ef-8bac-49f2f0d74a99"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9996bbcda79a522ebd8a78fe5da178a5","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":"9996bbcda79a522ebd8a78fe5da178a5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"DELETE /peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2 204 146ms","method":"DELETE","requestID":"e8cff7c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":146,"status":204,"url":"/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2"} 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/064c9ccf-5317-43e4-a841-f7977e2989fe"},{"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/22b9cf6e-d6de-4296-898d-68a3dea1a483"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5abf44dd-d936-461d-bfad-6a5eaeb3afa2"}}},"level":"info","message":"received a callback","requestID":"9996bbcda79a522ebd8a78fe5da178a5"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"},"level":"info","message":"Successfully finished experiment","requestID":"b1ec542352037bd763d47d18677a9c1c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e8eef170-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:42Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.369631,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:42Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F064c9ccf-5317-43e4-a841-f7977e2989fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ef1b470-b4d7-404d-9bc2-cb65791d23e2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.0295022} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e8eef170-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe","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":"e8eef170-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/064c9ccf-5317-43e4-a841-f7977e2989fe/signaling 200 40ms","method":"POST","requestID":"e8eef170-7a5f-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/devices/064c9ccf-5317-43e4-a841-f7977e2989fe/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e8f6e0b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 51ms","method":"POST","requestID":"e8eef170-7a5f-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:42Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.66652,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:42Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22b9cf6e-d6de-4296-898d-68a3dea1a483","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2370d594-38ad-4d3a-8801-1af534a865bc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.1106772} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e8f6e0b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483","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":"e8f6e0b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/signaling 200 80ms","method":"POST","requestID":"e8f6e0b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":80,"status":200,"url":"/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 77ms","method":"POST","requestID":"e8f6e0b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":77,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F51b8de4a-529f-4ecd-899a-59a7515bec5d': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F51b8de4a-529f-4ecd-899a-59a7515bec5d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"ca9304e3-7122-492a-8cf1-5ed5a7a2e2b0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.2068834} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f908696c-8472-471a-a66c-06ddafa8aede","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.2076495} authorization-1 | {"level":"info","message":"POST /relations/update 200 229ms","method":"POST","requestID":"b1ec542352037bd763d47d18677a9c1c","responseTime":229,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d","requestID":"b1ec542352037bd763d47d18677a9c1c"} experiment-1 | {"level":"info","message":"DELETE /experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d 204 672ms","method":"DELETE","requestID":"b1ec542352037bd763d47d18677a9c1c","responseTime":672,"status":204,"url":"/experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 482ms","method":"POST","requestID":"9ab1f27265dfcd2e760568747af83eea","responseTime":482,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 438ms","method":"POST","requestID":"9996bbcda79a522ebd8a78fe5da178a5","responseTime":438,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/51b8de4a-529f-4ecd-899a-59a7515bec5d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.678","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b1ec542352037bd763d47d18677a9c1c"} gateway-1 | {"time_local":"24/Sep/2024:10:29:42 +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.516","http_referrer":"","http_user_agent":"node-fetch","requestID":"9ab1f27265dfcd2e760568747af83eea"} gateway-1 | {"time_local":"24/Sep/2024:10:29:42 +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.486","http_referrer":"","http_user_agent":"node-fetch","requestID":"9996bbcda79a522ebd8a78fe5da178a5"} gateway-1 | {"time_local":"24/Sep/2024:10:29:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2891","request_time":"2.528","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":"b22c45501f4492c5aac3281fb80f0a8e"} gateway-1 | {"time_local":"24/Sep/2024:10:29:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3229","request_time":"2.747","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":"652d7759cfc20a0aced281734c63e307"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Mn0.IJ1Fmtn5JMVoAAYmJKPqhfhHaFrqxMcQnxNlGCxEORw","level":"info","message":"auth send jwt","requestID":"0441e30942fb5d8cc66d6a12c8c0996c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0441e30942fb5d8cc66d6a12c8c0996c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0441e30942fb5d8cc66d6a12c8c0996c"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:42Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.947689,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:42Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/22b9cf6e-d6de-4296-898d-68a3dea1a483' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0441e30942fb5d8cc66d6a12c8c0996c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173782,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Mn0.IJ1Fmtn5JMVoAAYmJKPqhfhHaFrqxMcQnxNlGCxEORw"} authorization-1 | {"level":"info","message":"POST /authorize 200 58ms","method":"POST","requestID":"0441e30942fb5d8cc66d6a12c8c0996c","responseTime":58,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/064c9ccf-5317-43e4-a841-f7977e2989fe' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"09b73ba3-586a-459d-ad0b-1c15eb2c3e0f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.596138} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"0441e30942fb5d8cc66d6a12c8c0996c","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1cb5d79f-7db1-4e4e-a65e-df73219ab3d4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.6036532} authorization-1 | {"level":"info","message":"POST /relations/update 200 35ms","method":"POST","requestID":"0441e30942fb5d8cc66d6a12c8c0996c","responseTime":35,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"c06492e0-2817-4cdb-83f1-1645335432dd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.6881154} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"78ef5633-1dbe-44c7-9d98-991c3bf2b606","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.6916509} authorization-1 | {"level":"info","message":"POST /relations/update 200 90ms","method":"POST","requestID":"0441e30942fb5d8cc66d6a12c8c0996c","responseTime":90,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:42.688072430Z"}]},"request_id":"ac323a21-9876-4356-af8d-daa0400bab97","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.6985703} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0441e30942fb5d8cc66d6a12c8c0996c"} device-1 | {"level":"info","message":"POST /devices? 201 213ms","method":"POST","requestID":"0441e30942fb5d8cc66d6a12c8c0996c","responseTime":213,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"0441e30942fb5d8cc66d6a12c8c0996c","responseTime":10,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:29:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.260","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0441e30942fb5d8cc66d6a12c8c0996c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Mn0.IJ1Fmtn5JMVoAAYmJKPqhfhHaFrqxMcQnxNlGCxEORw","level":"info","message":"auth send jwt","requestID":"e3fa143c7e25589be3efd62ee7c0d274"} device-1 | {"level":"info","message":"postDevices called","requestID":"e3fa143c7e25589be3efd62ee7c0d274"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"e3fa143c7e25589be3efd62ee7c0d274","responseTime":8,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:42Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.560988,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e3fa143c7e25589be3efd62ee7c0d274","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173782,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Mn0.IJ1Fmtn5JMVoAAYmJKPqhfhHaFrqxMcQnxNlGCxEORw"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"e3fa143c7e25589be3efd62ee7c0d274","responseTime":33,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"71812b98-2136-4935-9d04-ebf7c83e0864","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.794291} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"e3fa143c7e25589be3efd62ee7c0d274","responseTime":7,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d27e9477-f507-4230-9766-63a2ad18a5d6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.8272817} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"e3fa143c7e25589be3efd62ee7c0d274","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"7baf6741-183b-4528-a159-72f3a2dbfc1d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.8798876} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0cc33cdf-e39a-48a1-bc95-c5ba4e11aa78","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.8809261} authorization-1 | {"level":"info","message":"POST /relations/update 200 58ms","method":"POST","requestID":"e3fa143c7e25589be3efd62ee7c0d274","responseTime":58,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:42.879855431Z"}]},"request_id":"805887d7-25ea-42f7-8c3b-58946b4562d2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173782.8887439} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e3fa143c7e25589be3efd62ee7c0d274"} device-1 | {"level":"info","message":"POST /devices? 201 153ms","method":"POST","requestID":"e3fa143c7e25589be3efd62ee7c0d274","responseTime":153,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e3fa143c7e25589be3efd62ee7c0d274"} authorization-1 | {"level":"info","message":"POST /relations/query 200 34ms","method":"POST","requestID":"e3fa143c7e25589be3efd62ee7c0d274","responseTime":34,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"78dd66ed8f257560f55ef0ff59568d1b","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":"78dd66ed8f257560f55ef0ff59568d1b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:29:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/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":"78dd66ed8f257560f55ef0ff59568d1b"} device-1 | {"level":"info","message":"OPTIONS /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/websocket 200 1ms","method":"OPTIONS","requestID":"78dd66ed8f257560f55ef0ff59568d1b","responseTime":1,"status":200,"url":"/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc","level":"info","message":"auth send jwt","requestID":"68832e1e8378640db5dd983c007280b6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"68832e1e8378640db5dd983c007280b6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"68832e1e8378640db5dd983c007280b6"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.82139,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"68832e1e8378640db5dd983c007280b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173786,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"68832e1e8378640db5dd983c007280b6","responseTime":34,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"68832e1e8378640db5dd983c007280b6"} gateway-1 | {"time_local":"24/Sep/2024:10:29:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.066","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":"68832e1e8378640db5dd983c007280b6"} device-1 | {"level":"info","message":"POST /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/websocket 200 90ms","method":"POST","requestID":"68832e1e8378640db5dd983c007280b6","responseTime":90,"status":200,"url":"/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a' connected"} device-1 | {"level":"info","message":"OPTIONS /devices/2ece2b2f-1110-4e49-8265-6654709ebcab/websocket 200 1ms","method":"OPTIONS","requestID":"2b8cc5bc8a8f061ded519a335dbe0484","responseTime":1,"status":200,"url":"/devices/2ece2b2f-1110-4e49-8265-6654709ebcab/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:29:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2ece2b2f-1110-4e49-8265-6654709ebcab/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","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":"2b8cc5bc8a8f061ded519a335dbe0484"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2b8cc5bc8a8f061ded519a335dbe0484","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":"2b8cc5bc8a8f061ded519a335dbe0484","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc","level":"info","message":"auth send jwt","requestID":"623bd1ac93cb80f6e47d6209f20889ec"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"623bd1ac93cb80f6e47d6209f20889ec","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"623bd1ac93cb80f6e47d6209f20889ec"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915582,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"623bd1ac93cb80f6e47d6209f20889ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173786,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"623bd1ac93cb80f6e47d6209f20889ec","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:29:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2ece2b2f-1110-4e49-8265-6654709ebcab/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.104","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":"623bd1ac93cb80f6e47d6209f20889ec"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"623bd1ac93cb80f6e47d6209f20889ec"} device-1 | {"level":"info","message":"POST /devices/2ece2b2f-1110-4e49-8265-6654709ebcab/websocket 200 91ms","method":"POST","requestID":"623bd1ac93cb80f6e47d6209f20889ec","responseTime":91,"status":200,"url":"/devices/2ece2b2f-1110-4e49-8265-6654709ebcab/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc","level":"info","message":"auth send jwt","requestID":"5d1134c1a96ff97e9d5d26b40a5c89c2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5d1134c1a96ff97e9d5d26b40a5c89c2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d1134c1a96ff97e9d5d26b40a5c89c2"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.73353,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5d1134c1a96ff97e9d5d26b40a5c89c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173786,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5d1134c1a96ff97e9d5d26b40a5c89c2","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:42.688072430Z"}]},"request_id":"714506f6-f76b-49ab-9363-331a1e438980","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173786.3328824} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5d1134c1a96ff97e9d5d26b40a5c89c2","responseTime":4,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:29:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5d1134c1a96ff97e9d5d26b40a5c89c2"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d1134c1a96ff97e9d5d26b40a5c89c2"} device-1 | {"level":"info","message":"GET /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a? 200 46ms","method":"GET","requestID":"5d1134c1a96ff97e9d5d26b40a5c89c2","responseTime":46,"status":200,"url":"/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc","level":"info","message":"auth send jwt","requestID":"a572b69fa02f771814f56afb3ff0b3e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a572b69fa02f771814f56afb3ff0b3e0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a572b69fa02f771814f56afb3ff0b3e0"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":24.920365,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a572b69fa02f771814f56afb3ff0b3e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173786,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 27ms","method":"POST","requestID":"a572b69fa02f771814f56afb3ff0b3e0","responseTime":27,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:42.879855431Z"}]},"request_id":"44b5fc7a-dac2-48e0-888c-b2854c413129","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173786.4171002} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a572b69fa02f771814f56afb3ff0b3e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a572b69fa02f771814f56afb3ff0b3e0"} gateway-1 | {"time_local":"24/Sep/2024:10:29:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2ece2b2f-1110-4e49-8265-6654709ebcab? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a572b69fa02f771814f56afb3ff0b3e0"} device-1 | {"level":"info","message":"GET /devices/2ece2b2f-1110-4e49-8265-6654709ebcab? 200 41ms","method":"GET","requestID":"a572b69fa02f771814f56afb3ff0b3e0","responseTime":41,"status":200,"url":"/devices/2ece2b2f-1110-4e49-8265-6654709ebcab?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc","level":"info","message":"auth send jwt","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"328aab54e7cabdff94078007d8d94591"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.960972,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"328aab54e7cabdff94078007d8d94591","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173786,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"328aab54e7cabdff94078007d8d94591","responseTime":32,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 39ms","method":"GET","requestID":"328aab54e7cabdff94078007d8d94591","responseTime":39,"status":200,"url":"/auth"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Attempting to run experiment","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Attempting to book experiment","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Successfully booked experiment","requestID":"328aab54e7cabdff94078007d8d94591"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eb9f1d50-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.956314,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"eb9f1d50-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173786,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eb9f1d50-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:42.688072430Z"}]},"request_id":"98efdebb-efdf-4e8d-ac2c-1d024bc5ad1b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173786.543626} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"eb9f1d50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eba55ee0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.952792,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"eba55ee0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173786,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eba55ee0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eb9f1d50-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a? 200 49ms","method":"GET","requestID":"eb9f1d50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:42.879855431Z"}]},"request_id":"cb1e2e5c-c378-4e55-aada-bcf41ad70c6a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173786.5871084} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"eba55ee0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eba55ee0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/2ece2b2f-1110-4e49-8265-6654709ebcab? 200 59ms","method":"GET","requestID":"eba55ee0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/devices/2ece2b2f-1110-4e49-8265-6654709ebcab?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Setting up experiment","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Successfully locked booking for experiment","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Attempting to update booking for experiment","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Successfully updated booking for experiment","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Successfully set up experiment","requestID":"328aab54e7cabdff94078007d8d94591"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ebd5bdb0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:46Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ebd659f0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.958148,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ebd5bdb0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173786,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Successfully running experiment","requestID":"328aab54e7cabdff94078007d8d94591"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ebd5bdb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ebd6cf20-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.933856,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ebd659f0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173786,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ebd659f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7a746c04-a661-4d38-834f-ffb3296131cb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173786.9240146} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:42.688072430Z"}]},"request_id":"6b53806f-50a4-4a41-8500-ba3d6b9f7ee5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173786.9255772} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.241071,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ebd6cf20-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 42ms","method":"POST","requestID":"ebd6cf20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 34ms","method":"POST","requestID":"ebd5bdb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:42.879855431Z"}]},"request_id":"c79572e6-5f7e-4408-ae87-670b3fa1ac13","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173786.9274318} authorization-1 | {"level":"info","message":"POST /relations/query 200 34ms","method":"POST","requestID":"ebd659f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F16d6291b-ad18-4035-9f50-022b56601610#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F16d6291b-ad18-4035-9f50-022b56601610","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"e4616e0f-151e-42eb-a46e-c03d07cedbc0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173786.9618695} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f471aa7-67a6-45af-811a-0671af96a3e8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173786.9629257} authorization-1 | {"level":"info","message":"POST /relations/update 200 61ms","method":"POST","requestID":"328aab54e7cabdff94078007d8d94591","responseTime":61,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ebd6cf20-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/signaling 200 75ms","method":"POST","requestID":"ebd6cf20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":75,"status":200,"url":"/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ebd659f0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/2ece2b2f-1110-4e49-8265-6654709ebcab? 200 79ms","method":"GET","requestID":"ebd659f0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":79,"status":200,"url":"/devices/2ece2b2f-1110-4e49-8265-6654709ebcab?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ebd5bdb0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a? 200 109ms","method":"GET","requestID":"ebd5bdb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":109,"status":200,"url":"/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a?"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"level":"info","message":"POST /experiments? 201 572ms","method":"POST","requestID":"328aab54e7cabdff94078007d8d94591","responseTime":572,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ebe6fbc0-7a5f-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:29:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.580","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"328aab54e7cabdff94078007d8d94591"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ebe79800-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:47Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4N30.8DzKp7xBMXvE15taiq30ySqsjagJoo3NIkjxeRZ6IiM","level":"info","message":"auth send jwt","requestID":"7701235d53f8e807c8a5f0d843731b79"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7701235d53f8e807c8a5f0d843731b79","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7701235d53f8e807c8a5f0d843731b79"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3ca15b8-6b05-4170-8c0e-2159c57dca40","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173787.0141428} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.295367,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ebe6fbc0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","object_type":"device","rebac_allow":false,"scope_allow":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":"ebe6fbc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":25.349341,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ebe6fbc0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"7701235d53f8e807c8a5f0d843731b79","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173787,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4N30.8DzKp7xBMXvE15taiq30ySqsjagJoo3NIkjxeRZ6IiM"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"7701235d53f8e807c8a5f0d843731b79","responseTime":30,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/2ece2b2f-1110-4e49-8265-6654709ebcab/signaling 200 48ms","method":"POST","requestID":"ebe6fbc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/devices/2ece2b2f-1110-4e49-8265-6654709ebcab/signaling"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.69837,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ebe79800-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 47ms","method":"POST","requestID":"ebe79800-7a5f-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f92a7f86-ab59-4931-94e8-eb210ebdda82","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173787.053973} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:42.688072430Z"}]},"request_id":"e5ae0bc4-94ef-42f4-a539-bf18ee7e9c0d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173787.0679386} authorization-1 | {"level":"info","message":"POST /relations/query 200 12ms","method":"POST","requestID":"7701235d53f8e807c8a5f0d843731b79","responseTime":12,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ebe79800-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/signaling 200 89ms","method":"POST","requestID":"ebe79800-7a5f-11ef-8bac-49f2f0d74a99","responseTime":89,"status":200,"url":"/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ebf5efe0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7701235d53f8e807c8a5f0d843731b79"} gateway-1 | {"time_local":"24/Sep/2024:10:29:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.100","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7701235d53f8e807c8a5f0d843731b79"} device-1 | {"level":"info","message":"GET /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a? 200 94ms","method":"GET","requestID":"7701235d53f8e807c8a5f0d843731b79","responseTime":94,"status":200,"url":"/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a?"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:47Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4N30.8DzKp7xBMXvE15taiq30ySqsjagJoo3NIkjxeRZ6IiM","level":"info","message":"auth send jwt","requestID":"1f37c0af9c57e1d4249ba53e2a5e14c0"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"44c087d7-93f5-408d-8fc2-93e512dd8ae8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173787.1147413} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1f37c0af9c57e1d4249ba53e2a5e14c0","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.821976,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:47Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1f37c0af9c57e1d4249ba53e2a5e14c0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ebf5efe0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","object_type":"device","rebac_allow":false,"scope_allow":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":"ebf5efe0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":25.084839,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1f37c0af9c57e1d4249ba53e2a5e14c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173787,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4N30.8DzKp7xBMXvE15taiq30ySqsjagJoo3NIkjxeRZ6IiM"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"1f37c0af9c57e1d4249ba53e2a5e14c0","responseTime":30,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ebf5efe0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2ece2b2f-1110-4e49-8265-6654709ebcab/signaling 200 58ms","method":"POST","requestID":"ebf5efe0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":58,"status":200,"url":"/devices/2ece2b2f-1110-4e49-8265-6654709ebcab/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"328aab54e7cabdff94078007d8d94591"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Building connection plan","requestID":"328aab54e7cabdff94078007d8d94591"} 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":"62640dfb-8adb-4a38-a0e1-db8fbea80dac"},{"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":"4e233bb1-056b-47e2-8a42-aa245d493af4"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"755f28c4-fd06-4d10-a568-ac07f0a411e8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"328aab54e7cabdff94078007d8d94591"} 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/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a"},{"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/2ece2b2f-1110-4e49-8265-6654709ebcab"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"328aab54e7cabdff94078007d8d94591"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ec03ab80-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:42.879855431Z"}]},"request_id":"0acab9f1-e0a8-4dd8-baf0-441b412ca6f0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173787.19426} authorization-1 | {"level":"info","message":"POST /relations/query 200 44ms","method":"POST","requestID":"1f37c0af9c57e1d4249ba53e2a5e14c0","responseTime":44,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.81421,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ec03ab80-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173786,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4Nn0.kS8YoDeyqzTH_OQCl4HKaGVRpMKX6f5BVU6CVfCBRgc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ec03ab80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1f37c0af9c57e1d4249ba53e2a5e14c0"} gateway-1 | {"time_local":"24/Sep/2024:10:29:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2ece2b2f-1110-4e49-8265-6654709ebcab? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.090","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1f37c0af9c57e1d4249ba53e2a5e14c0"} device-1 | {"level":"info","message":"GET /devices/2ece2b2f-1110-4e49-8265-6654709ebcab? 200 85ms","method":"GET","requestID":"1f37c0af9c57e1d4249ba53e2a5e14c0","responseTime":85,"status":200,"url":"/devices/2ece2b2f-1110-4e49-8265-6654709ebcab?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"ea3cec47-4ea7-4155-9863-e2922e546cd9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173787.240358} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88f885f5-24b1-49e7-bee2-73168ae692cb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173787.2417011} authorization-1 | {"level":"info","message":"POST /relations/update 200 84ms","method":"POST","requestID":"ec03ab80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":84,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ec03ab80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ec03ab80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad'","requestID":"ec03ab80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad'","requestID":"ec03ab80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ec03ab80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 144ms","method":"POST","requestID":"ec03ab80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":144,"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":"ec03ab80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","device":"2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","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/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","device":"2ece2b2f-1110-4e49-8265-6654709ebcab","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} device-1 | {"device":"2ece2b2f-1110-4e49-8265-6654709ebcab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2ece2b2f-1110-4e49-8265-6654709ebcab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"328aab54e7cabdff94078007d8d94591"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2259c09b-ee2d-434d-95e5-c7ffd94f23d7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173787.5432174} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec385010-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.958953,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ec385010-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","object_type":"device","rebac_allow":false,"scope_allow":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":"ec385010-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 7689153941387364238 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:jZ33\r\na=ice-pwd:IxBB/asdbSdVHsbj/YKHAsvV\r\na=ice-options:trickle\r\na=fingerprint:sha-256 DA:D1:CA:D7:62:08:1E:33:D7:A3:96:3E:B5:5F:B5:97:C5:6F:EB:CF:2F:40:B8:C4:10:00:2A:9E:EB:94:48:5B\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"2ece2b2f-1110-4e49-8265-6654709ebcab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec385010-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/signaling 200 40ms","method":"POST","requestID":"ec385010-7a5f-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec3f06d0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec3f06d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2ece2b2f-1110-4e49-8265-6654709ebcab/signaling 200 50ms","method":"POST","requestID":"ec3f06d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/devices/2ece2b2f-1110-4e49-8265-6654709ebcab/signaling"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de301929-e8ca-4293-b817-d2f2323d079e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173787.5970805} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.909973,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ec3f06d0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 43ms","method":"POST","requestID":"ec3f06d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 3412253487966033096 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:Vszq\r\na=ice-pwd:pIGjp63BhWbTdJM4TT2Zz22k\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C9:BA:96:DD:A0:C2:0F:19:2B:C6:72:9C:D8:CF:33:75:C3:6F:6D:4F:86:E8:98:A8:CF:65:16:28:E7:71:24:4D\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2601268751 1 udp 2113937151 9b898cc8-3e17-41b0-b3c4-795ae24cf636.local 50587 typ host generation 0 ufrag jZ33 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2ece2b2f-1110-4e49-8265-6654709ebcab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:522280048 1 udp 1677729535 141.24.211.56 50587 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag jZ33 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2ece2b2f-1110-4e49-8265-6654709ebcab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1278010363 1 udp 33562623 141.24.210.113 62481 typ relay raddr 141.24.211.56 rport 50587 generation 0 ufrag jZ33 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2ece2b2f-1110-4e49-8265-6654709ebcab","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/2ece2b2f-1110-4e49-8265-6654709ebcab'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab'"} device-1 | {"content":{"candidate":"candidate:3332019476 1 udp 2113937151 2ee3fb68-521b-45ca-9e56-aced360c5e8f.local 33781 typ host generation 0 ufrag Vszq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","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":"f7bf3686406095278c6188f96410e2bd","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":"f7bf3686406095278c6188f96410e2bd","responseTime":1,"status":200,"url":"/auth"} device-1 | {"content":{"candidate":"candidate:1119354731 1 udp 1677729535 141.24.211.56 33781 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Vszq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","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/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} 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/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a"},{"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/2ece2b2f-1110-4e49-8265-6654709ebcab"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad"}}},"level":"info","message":"received a callback","requestID":"f7bf3686406095278c6188f96410e2bd"} device-1 | {"device":"2ece2b2f-1110-4e49-8265-6654709ebcab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"2ece2b2f-1110-4e49-8265-6654709ebcab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} gateway-1 | {"time_local":"24/Sep/2024:10:29:47 +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":"f7bf3686406095278c6188f96410e2bd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"f7bf3686406095278c6188f96410e2bd","responseTime":13,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"2ece2b2f-1110-4e49-8265-6654709ebcab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","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/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2eddbb51c9a02ebabe3f4c5aebc014ff","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":"2eddbb51c9a02ebabe3f4c5aebc014ff","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/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a"},{"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/2ece2b2f-1110-4e49-8265-6654709ebcab"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad"}}},"level":"info","message":"received a callback","requestID":"2eddbb51c9a02ebabe3f4c5aebc014ff"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ec7afe60-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e333577f-d39e-43ad-9756-6e670c611345","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173787.9838078} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.305109,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ec7afe60-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","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":"ec7afe60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ec7afe60-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad 200 17ms","method":"GET","requestID":"ec7afe60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4OH0.b1qPFNwziw2F3_lbZQd2JjmTOVThzMiMFjgSlMIVHtQ","level":"info","message":"auth send jwt","requestID":"3fa0d902c17b65c2f41e19bfcccb9137"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"3fa0d902c17b65c2f41e19bfcccb9137","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/16d6291b-ad18-4035-9f50-022b56601610","requestID":"3fa0d902c17b65c2f41e19bfcccb9137"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.392364,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3fa0d902c17b65c2f41e19bfcccb9137","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173788,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4OH0.b1qPFNwziw2F3_lbZQd2JjmTOVThzMiMFjgSlMIVHtQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3fa0d902c17b65c2f41e19bfcccb9137","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 200ms","method":"POST","requestID":"2eddbb51c9a02ebabe3f4c5aebc014ff","responseTime":200,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.209","http_referrer":"","http_user_agent":"node-fetch","requestID":"2eddbb51c9a02ebabe3f4c5aebc014ff"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec92a510-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83d0d25d-8bde-4b03-b83e-65d7ef37ddf1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.1348023} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.343235,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ec92a510-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","object_type":"device","rebac_allow":false,"scope_allow":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":"ec92a510-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/16d6291b-ad18-4035-9f50-022b56601610","requestID":"3fa0d902c17b65c2f41e19bfcccb9137"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec92a510-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"GET /experiments/16d6291b-ad18-4035-9f50-022b56601610 200 50ms","method":"GET","requestID":"3fa0d902c17b65c2f41e19bfcccb9137","responseTime":50,"status":200,"url":"/experiments/16d6291b-ad18-4035-9f50-022b56601610"} device-1 | {"level":"info","message":"POST /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/signaling 200 12ms","method":"POST","requestID":"ec92a510-7a5f-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/signaling"} gateway-1 | {"time_local":"24/Sep/2024:10:29:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/16d6291b-ad18-4035-9f50-022b56601610 HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3fa0d902c17b65c2f41e19bfcccb9137"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec951610-7a5f-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4OH0.b1qPFNwziw2F3_lbZQd2JjmTOVThzMiMFjgSlMIVHtQ","level":"info","message":"auth send jwt","requestID":"cd164bdc255d455d61838feeca59685e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cd164bdc255d455d61838feeca59685e","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/16d6291b-ad18-4035-9f50-022b56601610","requestID":"cd164bdc255d455d61838feeca59685e"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.428454,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"58504939-3dbc-45ef-a276-fc06a50b8dba","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.153898} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ec951610-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"ec951610-7a5f-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.017217,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cd164bdc255d455d61838feeca59685e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173788,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4OH0.b1qPFNwziw2F3_lbZQd2JjmTOVThzMiMFjgSlMIVHtQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cd164bdc255d455d61838feeca59685e","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec951610-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2ece2b2f-1110-4e49-8265-6654709ebcab/signaling 200 48ms","method":"POST","requestID":"ec951610-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/devices/2ece2b2f-1110-4e49-8265-6654709ebcab/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Attempting to finish experiment","requestID":"cd164bdc255d455d61838feeca59685e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ec9e64e0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.29212,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ec9e64e0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173788,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4OH0.b1qPFNwziw2F3_lbZQd2JjmTOVThzMiMFjgSlMIVHtQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ec9e64e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","device":"2ece2b2f-1110-4e49-8265-6654709ebcab","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","device":"2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22162b09-1f63-4ea3-8aec-e1b2daa4f3ad': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F22162b09-1f63-4ea3-8aec-e1b2daa4f3ad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"349db636-e7a9-4729-b614-e8848cd2d491","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.2859623} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"05ec372d-a96a-4889-9749-d978f7857acb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.2867916} authorization-1 | {"level":"info","message":"POST /relations/update 200 39ms","method":"POST","requestID":"ec9e64e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ec9e64e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad 204 130ms","method":"DELETE","requestID":"ec9e64e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":130,"status":204,"url":"/peerconnections/22162b09-1f63-4ea3-8aec-e1b2daa4f3ad"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/16d6291b-ad18-4035-9f50-022b56601610"},"level":"info","message":"Successfully finished experiment","requestID":"cd164bdc255d455d61838feeca59685e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ecc46370-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"76c312ee-2f89-480c-a5f8-2a321d9491a4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.5055327} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F16d6291b-ad18-4035-9f50-022b56601610': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F16d6291b-ad18-4035-9f50-022b56601610","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"89a37e61-6baa-4e95-9709-1f8e35f4c62d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.5104427} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c74e7e10-6a58-4ec6-b196-ae8fb45b5cf5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.5118482} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":47.067257,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ecc46370-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 90ms","method":"POST","requestID":"ecc46370-7a5f-11ef-8bac-49f2f0d74a99","responseTime":90,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 103ms","method":"POST","requestID":"cd164bdc255d455d61838feeca59685e","responseTime":103,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ecc46370-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/signaling 200 115ms","method":"POST","requestID":"ecc46370-7a5f-11ef-8bac-49f2f0d74a99","responseTime":115,"status":200,"url":"/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ecd63dc0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ece2b2f-1110-4e49-8265-6654709ebcab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf305179-73a7-49a3-b95a-43878e708e16","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.6055107} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.161801,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ecd63dc0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab","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":"ecd63dc0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2ece2b2f-1110-4e49-8265-6654709ebcab/signaling 200 42ms","method":"POST","requestID":"ecd63dc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/devices/2ece2b2f-1110-4e49-8265-6654709ebcab/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 74ms","method":"POST","requestID":"ecd63dc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":74,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/16d6291b-ad18-4035-9f50-022b56601610","requestID":"cd164bdc255d455d61838feeca59685e"} gateway-1 | {"time_local":"24/Sep/2024:10:29:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/16d6291b-ad18-4035-9f50-022b56601610 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.610","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd164bdc255d455d61838feeca59685e"} experiment-1 | {"level":"info","message":"DELETE /experiments/16d6291b-ad18-4035-9f50-022b56601610 204 604ms","method":"DELETE","requestID":"cd164bdc255d455d61838feeca59685e","responseTime":604,"status":204,"url":"/experiments/16d6291b-ad18-4035-9f50-022b56601610"} gateway-1 | {"time_local":"24/Sep/2024:10:29:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"2.487","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":"086b59c517e612460ab7837f6d33e94e"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2ece2b2f-1110-4e49-8265-6654709ebcab' closed"} gateway-1 | {"time_local":"24/Sep/2024:10:29:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3231","request_time":"2.672","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":"adf4ea20087e81bc7841a1ba4cc83be8"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2519dd64-a49b-4dc1-8b73-7a53c9e3bd7a' closed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4OH0.b1qPFNwziw2F3_lbZQd2JjmTOVThzMiMFjgSlMIVHtQ","level":"info","message":"auth send jwt","requestID":"654170f6a6bb5ba1357b94c8586443c5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"654170f6a6bb5ba1357b94c8586443c5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"654170f6a6bb5ba1357b94c8586443c5"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.950755,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"654170f6a6bb5ba1357b94c8586443c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173788,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4OH0.b1qPFNwziw2F3_lbZQd2JjmTOVThzMiMFjgSlMIVHtQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"654170f6a6bb5ba1357b94c8586443c5","responseTime":33,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7c541efd-5e09-42e6-b99e-34af2858b49b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.9099362} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"654170f6a6bb5ba1357b94c8586443c5","responseTime":28,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a8bb748-c108-4c36-8db0-37815fdf2ad5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.9172912} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"654170f6a6bb5ba1357b94c8586443c5","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"3b99940a-7af2-494f-a298-5c0a729eab39","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.9569385} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a77a16d-3e6b-4c7e-a878-b92bd0a31c0f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.9581976} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"654170f6a6bb5ba1357b94c8586443c5","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:48.956907167Z"}]},"request_id":"a13e2d7a-59c2-4f77-9d64-4091b3aae4d9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173788.970231} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"654170f6a6bb5ba1357b94c8586443c5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"654170f6a6bb5ba1357b94c8586443c5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices? 201 148ms","method":"POST","requestID":"654170f6a6bb5ba1357b94c8586443c5","responseTime":148,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"654170f6a6bb5ba1357b94c8586443c5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4OH0.b1qPFNwziw2F3_lbZQd2JjmTOVThzMiMFjgSlMIVHtQ","level":"info","message":"auth send jwt","requestID":"a5dd4149ea0f83125546a61d2a797a9e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a5dd4149ea0f83125546a61d2a797a9e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a5dd4149ea0f83125546a61d2a797a9e"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.006411,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a5dd4149ea0f83125546a61d2a797a9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173788,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc4OH0.b1qPFNwziw2F3_lbZQd2JjmTOVThzMiMFjgSlMIVHtQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a5dd4149ea0f83125546a61d2a797a9e","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ff074199-4672-414f-8ce1-ddf6566d5314","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173789.0156302} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a5dd4149ea0f83125546a61d2a797a9e","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d1f4bd2-aa23-490c-8bcb-f638c4e290b7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173789.0222828} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"a5dd4149ea0f83125546a61d2a797a9e","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"b0813993-4a19-4fc1-a169-2b2db2228cf5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173789.035353} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b9872d6a-cb32-47e9-8c7d-627f2a45e1a0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173789.0365856} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"a5dd4149ea0f83125546a61d2a797a9e","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:49.035323545Z"}]},"request_id":"31e5595a-8311-43a9-bae1-fc27b8e28336","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173789.0431056} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a5dd4149ea0f83125546a61d2a797a9e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a5dd4149ea0f83125546a61d2a797a9e"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.070","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a5dd4149ea0f83125546a61d2a797a9e"} device-1 | {"level":"info","message":"POST /devices? 201 68ms","method":"POST","requestID":"a5dd4149ea0f83125546a61d2a797a9e","responseTime":68,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5MH0.yW6X5IjEJ-wKqlPKaW_odsa2KqEMFyfFNS6f0TXBSMA","level":"info","message":"auth send jwt","requestID":"c6e534cadda7d749c5c5b1fdebe75c50"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"c6e534cadda7d749c5c5b1fdebe75c50","responseTime":28,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c6e534cadda7d749c5c5b1fdebe75c50"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:50Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.888254,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c6e534cadda7d749c5c5b1fdebe75c50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173790,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5MH0.yW6X5IjEJ-wKqlPKaW_odsa2KqEMFyfFNS6f0TXBSMA"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c6e534cadda7d749c5c5b1fdebe75c50","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:49.035323545Z"}]},"request_id":"39090a2a-1e03-4c8d-b1dd-8c14adf5d7cd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173790.696705} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c6e534cadda7d749c5c5b1fdebe75c50","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ef95a7c-c6fc-45a7-aa9b-6ce7ec1638d9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173790.7366202} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:49.035323545Z"}]},"request_id":"4895a138-b529-4bfe-b5d9-34ce4703c373","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173790.7372162} authorization-1 | {"level":"info","message":"POST /relations/update 200 35ms","method":"POST","requestID":"c6e534cadda7d749c5c5b1fdebe75c50","responseTime":35,"status":200,"url":"/relations/update"} gateway-1 | {"time_local":"24/Sep/2024:10:29:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.091","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c6e534cadda7d749c5c5b1fdebe75c50"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c6e534cadda7d749c5c5b1fdebe75c50"} device-1 | {"level":"info","message":"PATCH /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35 200 62ms","method":"PATCH","requestID":"c6e534cadda7d749c5c5b1fdebe75c50","responseTime":62,"status":200,"url":"/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"c6e534cadda7d749c5c5b1fdebe75c50","responseTime":7,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5MH0.yW6X5IjEJ-wKqlPKaW_odsa2KqEMFyfFNS6f0TXBSMA","level":"info","message":"auth send jwt","requestID":"274914958b60997a8b0abbca4967a7a1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"274914958b60997a8b0abbca4967a7a1"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:50Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.889858,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"274914958b60997a8b0abbca4967a7a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173790,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5MH0.yW6X5IjEJ-wKqlPKaW_odsa2KqEMFyfFNS6f0TXBSMA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"274914958b60997a8b0abbca4967a7a1","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 37ms","method":"GET","requestID":"274914958b60997a8b0abbca4967a7a1","responseTime":37,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"274914958b60997a8b0abbca4967a7a1"} device-1 | {"level":"info","message":"POST /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/websocket 200 54ms","method":"POST","requestID":"274914958b60997a8b0abbca4967a7a1","responseTime":54,"status":200,"url":"/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:29:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.060","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"274914958b60997a8b0abbca4967a7a1"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"38f3f0fc35c6d746895a8a2e6c45e3ab","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":"38f3f0fc35c6d746895a8a2e6c45e3ab","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:29:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/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":"38f3f0fc35c6d746895a8a2e6c45e3ab"} device-1 | {"level":"info","message":"OPTIONS /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/websocket 200 1ms","method":"OPTIONS","requestID":"38f3f0fc35c6d746895a8a2e6c45e3ab","responseTime":1,"status":200,"url":"/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4","level":"info","message":"auth send jwt","requestID":"698dbbeb72826a0b07147b9889eb095f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"698dbbeb72826a0b07147b9889eb095f","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.957252,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"698dbbeb72826a0b07147b9889eb095f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173792,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"698dbbeb72826a0b07147b9889eb095f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"698dbbeb72826a0b07147b9889eb095f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"698dbbeb72826a0b07147b9889eb095f"} device-1 | {"level":"info","message":"POST /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/websocket 200 52ms","method":"POST","requestID":"698dbbeb72826a0b07147b9889eb095f","responseTime":52,"status":200,"url":"/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:29:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.058","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":"698dbbeb72826a0b07147b9889eb095f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f' connected"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1b93f66708531b46d6423ffab81d8bf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4","level":"info","message":"auth send jwt","requestID":"f1b93f66708531b46d6423ffab81d8bf"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932221,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f1b93f66708531b46d6423ffab81d8bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173792,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f1b93f66708531b46d6423ffab81d8bf","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 13ms","method":"GET","requestID":"f1b93f66708531b46d6423ffab81d8bf","responseTime":13,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:48.956907167Z"}]},"request_id":"57c1c734-f394-4405-af16-82a5a23a6d00","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173792.3404295} authorization-1 | {"level":"info","message":"POST /relations/query 200 30ms","method":"POST","requestID":"f1b93f66708531b46d6423ffab81d8bf","responseTime":30,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1b93f66708531b46d6423ffab81d8bf"} gateway-1 | {"time_local":"24/Sep/2024:10:29:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f1b93f66708531b46d6423ffab81d8bf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4","level":"info","message":"auth send jwt","requestID":"3b25af97b137e4bcf3142a0b85c0573d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3b25af97b137e4bcf3142a0b85c0573d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f? 200 66ms","method":"GET","requestID":"f1b93f66708531b46d6423ffab81d8bf","responseTime":66,"status":200,"url":"/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3b25af97b137e4bcf3142a0b85c0573d"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.93332,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3b25af97b137e4bcf3142a0b85c0573d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173792,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"3b25af97b137e4bcf3142a0b85c0573d","responseTime":31,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:49.035323545Z"}]},"request_id":"5a93ea8d-12b9-4d95-8655-42e82e0148b6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173792.406212} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3b25af97b137e4bcf3142a0b85c0573d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3b25af97b137e4bcf3142a0b85c0573d"} gateway-1 | {"time_local":"24/Sep/2024:10:29:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.102","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3b25af97b137e4bcf3142a0b85c0573d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4","level":"info","message":"auth send jwt","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a2f2f1635c4b05f721dd53450fe1a34b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.895436,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a2f2f1635c4b05f721dd53450fe1a34b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173792,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a2f2f1635c4b05f721dd53450fe1a34b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35? 200 131ms","method":"GET","requestID":"3b25af97b137e4bcf3142a0b85c0573d","responseTime":131,"status":200,"url":"/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Attempting to run experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Attempting to book experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Successfully booked experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef4011d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef44f3d0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.882544,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ef4011d0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173792,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ef4011d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.970172,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ef44f3d0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173792,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ef44f3d0-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:49.035323545Z"}]},"request_id":"38a45f8c-29b7-4be1-897d-015d134e8d76","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173792.6702592} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:48.956907167Z"}]},"request_id":"faf4f000-6ddc-4b38-8f7f-9b9963ce0375","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173792.6726553} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"ef44f3d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ef4011d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef44f3d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35? 200 54ms","method":"GET","requestID":"ef44f3d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":54,"status":200,"url":"/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef4011d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f? 200 89ms","method":"GET","requestID":"ef4011d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":89,"status":200,"url":"/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Setting up experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Successfully set up experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef609220-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:52Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef64fef0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.953846,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ef609220-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173792,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ef609220-7a5f-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.886643,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:48.956907167Z"}]},"request_id":"9796fa9d-d255-4ce6-be0d-9f9df8854403","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173792.876355} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef6721d0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ef609220-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ef64fef0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173792,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ef64fef0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef609220-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f? 200 53ms","method":"GET","requestID":"ef609220-7a5f-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Successfully running experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":32.263484,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:52Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cda71597-05e0-4a11-bfa3-c0b435fba35a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173792.9128208} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ef6721d0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 89ms","method":"POST","requestID":"ef6721d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":89,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef6721d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/signaling 200 129ms","method":"POST","requestID":"ef6721d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":129,"status":200,"url":"/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef7c5780-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:49.035323545Z"}]},"request_id":"7528a73e-196f-461c-ad14-f5eeacf18c64","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.0044034} authorization-1 | {"level":"info","message":"POST /relations/query 200 89ms","method":"POST","requestID":"ef64fef0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":89,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef64fef0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35? 200 199ms","method":"GET","requestID":"ef64fef0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":199,"status":200,"url":"/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef83f8a0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb08aa925-aa6f-4078-a54f-34fa78964d31#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb08aa925-aa6f-4078-a54f-34fa78964d31","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"efba3e32-544c-41a6-b6eb-cf2e150795c4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.0634775} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8288316c-46d5-4472-b4db-ebfdba565283","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.068549} authorization-1 | {"level":"info","message":"POST /relations/update 200 196ms","method":"POST","requestID":"a2f2f1635c4b05f721dd53450fe1a34b","responseTime":196,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"345f641a-8e3f-4339-8d28-a37b3b533981","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.1661282} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"client_addr":"127.0.0.1:40620","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.229854,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:53Z"} gateway-1 | {"time_local":"24/Sep/2024:10:29:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.736","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5M30.nwfGD10xFcS-PIs7fr0CNBisP4sKDGviRm8y5z3TS08","level":"info","message":"auth send jwt","requestID":"7deb0c27ee281bf5b6819744fae44b0a"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 704ms","method":"POST","requestID":"a2f2f1635c4b05f721dd53450fe1a34b","responseTime":704,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":35.085071,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ef7c5780-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","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 5ms","method":"GET","requestID":"7deb0c27ee281bf5b6819744fae44b0a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7deb0c27ee281bf5b6819744fae44b0a"} authorization-1 | {"level":"info","message":"POST /authorize 200 84ms","method":"POST","requestID":"ef7c5780-7a5f-11ef-8bac-49f2f0d74a99","responseTime":84,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11eb199d-e681-4fd2-b02e-d476a1fa5859","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.201175} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ef83f8a0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 83ms","method":"POST","requestID":"ef83f8a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":83,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.868257,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"7deb0c27ee281bf5b6819744fae44b0a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173793,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5M30.nwfGD10xFcS-PIs7fr0CNBisP4sKDGviRm8y5z3TS08"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7deb0c27ee281bf5b6819744fae44b0a","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:48.956907167Z"}]},"request_id":"c3d59bab-256e-416b-b473-6627cf5cd01c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.2585766} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7deb0c27ee281bf5b6819744fae44b0a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef7c5780-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/signaling 200 292ms","method":"POST","requestID":"ef7c5780-7a5f-11ef-8bac-49f2f0d74a99","responseTime":292,"status":200,"url":"/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef83f8a0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/signaling 200 243ms","method":"POST","requestID":"ef83f8a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":243,"status":200,"url":"/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efad79a0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7deb0c27ee281bf5b6819744fae44b0a"} device-1 | {"level":"info","message":"GET /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f? 200 129ms","method":"GET","requestID":"7deb0c27ee281bf5b6819744fae44b0a","responseTime":129,"status":200,"url":"/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f?"} gateway-1 | {"time_local":"24/Sep/2024:10:29:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7deb0c27ee281bf5b6819744fae44b0a"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.225506,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:53Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5M30.nwfGD10xFcS-PIs7fr0CNBisP4sKDGviRm8y5z3TS08","level":"info","message":"auth send jwt","requestID":"b57a96dcd12d4abdad42273ffbe3dc73"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b57a96dcd12d4abdad42273ffbe3dc73"} authentication-1 | {"level":"info","message":"GET /auth 200 32ms","method":"GET","requestID":"b57a96dcd12d4abdad42273ffbe3dc73","responseTime":32,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"71bb060b-aeba-4428-ac4d-de4fe02d0f4e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.350179} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"efad79a0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"efad79a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.954519,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b57a96dcd12d4abdad42273ffbe3dc73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173793,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5M30.nwfGD10xFcS-PIs7fr0CNBisP4sKDGviRm8y5z3TS08"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b57a96dcd12d4abdad42273ffbe3dc73","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:49.035323545Z"}]},"request_id":"43d0d16a-36ff-42ab-9f75-228bcdfcf420","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.397383} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b57a96dcd12d4abdad42273ffbe3dc73","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efad79a0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/signaling 200 96ms","method":"POST","requestID":"efad79a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":96,"status":200,"url":"/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Building connection plan","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} 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":"d1353159-d94f-4a8b-8572-3a4580e54c60"},{"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":"71a4588d-1df1-451f-9e5c-305f24f79b68"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"0ec56594-9908-4d01-aa5d-0be9b9ecb00f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} 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/4c04ec1a-e4c2-4b90-8ae2-de724af1630f"},{"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/b9202dc8-ba7f-4a86-a467-b2d56d51af35"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"efbf2ce0-7a5f-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:29:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b57a96dcd12d4abdad42273ffbe3dc73"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b57a96dcd12d4abdad42273ffbe3dc73"} device-1 | {"level":"info","message":"GET /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35? 200 123ms","method":"GET","requestID":"b57a96dcd12d4abdad42273ffbe3dc73","responseTime":123,"status":200,"url":"/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35?"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.981155,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"efbf2ce0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173792,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Mn0.ZRZIpDJbY0HN0qt8Xv21jlo1DBwISYqUYZpaBaU0jc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efbf2ce0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"b1455cc4-b421-45cc-8c4f-3d39dcf39e5d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.5786643} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18d1f50f-4e27-46b6-885d-2e0921f0d8ad","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.5799809} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"efbf2ce0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"efbf2ce0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"efbf2ce0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1'","requestID":"efbf2ce0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1'","requestID":"efbf2ce0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"efbf2ce0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 179ms","method":"POST","requestID":"efbf2ce0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":179,"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":"efbf2ce0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1","device":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","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/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a2f2f1635c4b05f721dd53450fe1a34b"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.167593,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"461100a6-6d35-4877-8858-527fa80f15a8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.7353275} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"efe94a20-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","object_type":"device","rebac_allow":false,"scope_allow":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":"efe94a20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efe94a20-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efe94a20-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/signaling 200 46ms","method":"POST","requestID":"efe94a20-7a5f-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eff0c430-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.149937,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:53Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"22f0db93-aa13-409b-81f5-05d5ed123b1e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173793.787577} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"eff0c430-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","object_type":"device","rebac_allow":false,"scope_allow":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":"eff0c430-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eff0c430-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/signaling 200 46ms","method":"POST","requestID":"eff0c430-7a5f-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/signaling"} device-1 | {"device":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"b9202dc8-ba7f-4a86-a467-b2d56d51af35","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":"d23dade5-38f9-4cf6-891f-17ff843a32c1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1689089391294486547 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:OOZB\r\na=ice-pwd:Jkw+rrPU1v2U5GpA3BxfX8Pm\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2E:FC:7B:29:BF:1C:A1:7E:2C:E1:D6:FA:FD:E6:C5:47:14:6F:E0:1D:99:1B:FD:6C:D7:89:3D:12:64:C2:92:46\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"b9202dc8-ba7f-4a86-a467-b2d56d51af35","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":"b9202dc8-ba7f-4a86-a467-b2d56d51af35","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":"b9202dc8-ba7f-4a86-a467-b2d56d51af35","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:1008929457 1 udp 2113937151 ed70addf-3cfe-4c48-a424-57a04379cd6d.local 51069 typ host generation 0 ufrag OOZB network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","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/d23dade5-38f9-4cf6-891f-17ff843a32c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d23dade5-38f9-4cf6-891f-17ff843a32c1","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ffb768a789c71b0007d43a4456013260","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":"ffb768a789c71b0007d43a4456013260","responseTime":1,"status":200,"url":"/auth"} device-1 | {"content":{"candidate":"candidate:2936581026 1 udp 1677729535 141.24.211.56 51069 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag OOZB network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","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/4c04ec1a-e4c2-4b90-8ae2-de724af1630f'"} device-1 | {"content":{"candidate":"candidate:287576144 1 udp 33562623 141.24.210.113 53500 typ relay raddr 141.24.211.56 rport 51069 generation 0 ufrag OOZB network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} 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/4c04ec1a-e4c2-4b90-8ae2-de724af1630f"},{"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/b9202dc8-ba7f-4a86-a467-b2d56d51af35"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1"}}},"level":"info","message":"received a callback","requestID":"ffb768a789c71b0007d43a4456013260"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f'"} device-1 | {"device":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} gateway-1 | {"time_local":"24/Sep/2024:10:29: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.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"ffb768a789c71b0007d43a4456013260"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 45ms","method":"POST","requestID":"ffb768a789c71b0007d43a4456013260","responseTime":45,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"d23dade5-38f9-4cf6-891f-17ff843a32c1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b9202dc8-ba7f-4a86-a467-b2d56d51af35","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":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"d23dade5-38f9-4cf6-891f-17ff843a32c1","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b9202dc8-ba7f-4a86-a467-b2d56d51af35","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 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d23dade5-38f9-4cf6-891f-17ff843a32c1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"af7198ca30ea3fb0523771bb855cbe75","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":"af7198ca30ea3fb0523771bb855cbe75","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/4c04ec1a-e4c2-4b90-8ae2-de724af1630f"},{"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/b9202dc8-ba7f-4a86-a467-b2d56d51af35"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1"}}},"level":"info","message":"received a callback","requestID":"af7198ca30ea3fb0523771bb855cbe75"} device-1 | {"device":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f1636700-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.237759,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd23dade5-38f9-4cf6-891f-17ff843a32c1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f47cc6cb-5d0a-4ce6-a937-56d12f4d2223","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173796.214099} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f1636700-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1","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 31ms","method":"POST","requestID":"f1636700-7a5f-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f1636700-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1 200 36ms","method":"GET","requestID":"f1636700-7a5f-11ef-8bac-49f2f0d74a99","responseTime":36,"status":200,"url":"/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 104ms","method":"POST","requestID":"af7198ca30ea3fb0523771bb855cbe75","responseTime":104,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f170d480-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:56Z"} gateway-1 | {"time_local":"24/Sep/2024:10:29:56 +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":"af7198ca30ea3fb0523771bb855cbe75"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5880ed21-85af-4007-bea2-d82aad0490ad","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173796.3014357} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.565938,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f170d480-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","object_type":"device","rebac_allow":false,"scope_allow":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":"f170d480-7a5f-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Nn0.Vnu5_3lYv1wfuUdmy-BoQv50om21q86IVT1Wi6LeAlk","level":"info","message":"auth send jwt","requestID":"13654e96863baee0b9d9553e860a215c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"13654e96863baee0b9d9553e860a215c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b08aa925-aa6f-4078-a54f-34fa78964d31","requestID":"13654e96863baee0b9d9553e860a215c"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.85209,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"13654e96863baee0b9d9553e860a215c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173796,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Nn0.Vnu5_3lYv1wfuUdmy-BoQv50om21q86IVT1Wi6LeAlk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13654e96863baee0b9d9553e860a215c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b08aa925-aa6f-4078-a54f-34fa78964d31","requestID":"13654e96863baee0b9d9553e860a215c"} experiment-1 | {"level":"info","message":"GET /experiments/b08aa925-aa6f-4078-a54f-34fa78964d31 200 23ms","method":"GET","requestID":"13654e96863baee0b9d9553e860a215c","responseTime":23,"status":200,"url":"/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"} gateway-1 | {"time_local":"24/Sep/2024:10:29:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b08aa925-aa6f-4078-a54f-34fa78964d31 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.087","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"13654e96863baee0b9d9553e860a215c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f170d480-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/signaling 200 102ms","method":"POST","requestID":"f170d480-7a5f-11ef-8bac-49f2f0d74a99","responseTime":102,"status":200,"url":"/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Nn0.Vnu5_3lYv1wfuUdmy-BoQv50om21q86IVT1Wi6LeAlk","level":"info","message":"auth send jwt","requestID":"228de69890677fc289c0c1faa7eb765a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"228de69890677fc289c0c1faa7eb765a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b08aa925-aa6f-4078-a54f-34fa78964d31","requestID":"228de69890677fc289c0c1faa7eb765a"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.835043,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"228de69890677fc289c0c1faa7eb765a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173796,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Nn0.Vnu5_3lYv1wfuUdmy-BoQv50om21q86IVT1Wi6LeAlk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"228de69890677fc289c0c1faa7eb765a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Attempting to finish experiment","requestID":"228de69890677fc289c0c1faa7eb765a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f18b1340-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:56Z"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f1901c50-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2dbd3fc0-30f3-4ed7-b6e2-21101b3edf09","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173796.5084763} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":37.673608,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f18b1340-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"f18b1340-7a5f-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.96325,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f1901c50-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173796,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5Nn0.Vnu5_3lYv1wfuUdmy-BoQv50om21q86IVT1Wi6LeAlk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f1901c50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f18b1340-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/signaling 200 138ms","method":"POST","requestID":"f18b1340-7a5f-11ef-8bac-49f2f0d74a99","responseTime":138,"status":200,"url":"/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/signaling"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1","device":"4c04ec1a-e4c2-4b90-8ae2-de724af1630f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"b9202dc8-ba7f-4a86-a467-b2d56d51af35","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":"b9202dc8-ba7f-4a86-a467-b2d56d51af35","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":"b9202dc8-ba7f-4a86-a467-b2d56d51af35","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/d23dade5-38f9-4cf6-891f-17ff843a32c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d23dade5-38f9-4cf6-891f-17ff843a32c1","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"96228bee5beddaf2e6f94012ac6207c5","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 26ms","method":"GET","requestID":"96228bee5beddaf2e6f94012ac6207c5","responseTime":26,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"89fda2489fc8c9afa0e4234d3e5ea638","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":"89fda2489fc8c9afa0e4234d3e5ea638","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":"closed","url":"http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f"},{"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/b9202dc8-ba7f-4a86-a467-b2d56d51af35"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1"}}},"level":"info","message":"received a callback","requestID":"96228bee5beddaf2e6f94012ac6207c5"} 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/4c04ec1a-e4c2-4b90-8ae2-de724af1630f"},{"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/b9202dc8-ba7f-4a86-a467-b2d56d51af35"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1"}}},"level":"info","message":"received a callback","requestID":"89fda2489fc8c9afa0e4234d3e5ea638"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd23dade5-38f9-4cf6-891f-17ff843a32c1': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd23dade5-38f9-4cf6-891f-17ff843a32c1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"0ecc5e83-8852-4cc2-bdcd-a1bd96658e7c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173796.6264236} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a67059bf-6ae6-47e4-8b67-e228e4eae7c5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173796.6704895} authorization-1 | {"level":"info","message":"POST /relations/update 200 61ms","method":"POST","requestID":"f1901c50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":61,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"d23dade5-38f9-4cf6-891f-17ff843a32c1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f1901c50-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1 204 262ms","method":"DELETE","requestID":"f1901c50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":262,"status":204,"url":"/peerconnections/d23dade5-38f9-4cf6-891f-17ff843a32c1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"},"level":"info","message":"Successfully finished experiment","requestID":"228de69890677fc289c0c1faa7eb765a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1ba3990-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.033613,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c04ec1a-e4c2-4b90-8ae2-de724af1630f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6cdaae64-aeb1-4a2c-9469-426ef932641d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173796.7828248} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f1ba3990-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f","object_type":"device","rebac_allow":false,"scope_allow":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":"f1ba3990-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1ba3990-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/signaling 200 38ms","method":"POST","requestID":"f1ba3990-7a5f-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1c11760-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.021189,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:56Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9202dc8-ba7f-4a86-a467-b2d56d51af35","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a00c487-ef23-47a6-905b-73c8e650e32a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173796.8274536} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f1c11760-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35","object_type":"device","rebac_allow":false,"scope_allow":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":"f1c11760-7a5f-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb08aa925-aa6f-4078-a54f-34fa78964d31': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb08aa925-aa6f-4078-a54f-34fa78964d31","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"284f9f40-299c-4fa1-a222-fe537c024510","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173796.831739} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a9f029a-8811-4806-bf37-ae748efdb0c8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173796.832881} authorization-1 | {"level":"info","message":"POST /relations/update 200 66ms","method":"POST","requestID":"228de69890677fc289c0c1faa7eb765a","responseTime":66,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1c11760-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/signaling 200 48ms","method":"POST","requestID":"f1c11760-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b08aa925-aa6f-4078-a54f-34fa78964d31","requestID":"228de69890677fc289c0c1faa7eb765a"} gateway-1 | {"time_local":"24/Sep/2024:10:29:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b08aa925-aa6f-4078-a54f-34fa78964d31 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.605","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"228de69890677fc289c0c1faa7eb765a"} experiment-1 | {"level":"info","message":"DELETE /experiments/b08aa925-aa6f-4078-a54f-34fa78964d31 204 590ms","method":"DELETE","requestID":"228de69890677fc289c0c1faa7eb765a","responseTime":590,"status":204,"url":"/experiments/b08aa925-aa6f-4078-a54f-34fa78964d31"} gateway-1 | {"time_local":"24/Sep/2024:10:29:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3180","request_time":"6.201","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a22144bcaa54a4e948f23a87ca4b54fd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 349ms","method":"POST","requestID":"96228bee5beddaf2e6f94012ac6207c5","responseTime":349,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29:57 +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.379","http_referrer":"","http_user_agent":"node-fetch","requestID":"96228bee5beddaf2e6f94012ac6207c5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 349ms","method":"POST","requestID":"89fda2489fc8c9afa0e4234d3e5ea638","responseTime":349,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:29:57 +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.379","http_referrer":"","http_user_agent":"node-fetch","requestID":"89fda2489fc8c9afa0e4234d3e5ea638"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5N30.OXuEB3XYVTJcipEHSg4sDVl1bEtWBGP8DOoz2TR1Elw","level":"info","message":"auth send jwt","requestID":"db90ff45cea2bf117c3109f217b95da4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"db90ff45cea2bf117c3109f217b95da4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"db90ff45cea2bf117c3109f217b95da4"} gateway-1 | {"time_local":"24/Sep/2024:10:29:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"4.811","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":"dd1c051c9a2843b33f8232881237876f"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b9202dc8-ba7f-4a86-a467-b2d56d51af35' closed"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:57Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.043291,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"db90ff45cea2bf117c3109f217b95da4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173797,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5N30.OXuEB3XYVTJcipEHSg4sDVl1bEtWBGP8DOoz2TR1Elw"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"db90ff45cea2bf117c3109f217b95da4","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4c04ec1a-e4c2-4b90-8ae2-de724af1630f' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"90012b0a-a3ec-4a3e-82cb-d7cc29880237","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173797.1045198} authorization-1 | {"level":"info","message":"POST /relations/query 200 36ms","method":"POST","requestID":"db90ff45cea2bf117c3109f217b95da4","responseTime":36,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8f84d958-9993-4ff7-a183-f068a1cd1972","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173797.1175346} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"db90ff45cea2bf117c3109f217b95da4","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"05519a55-7517-4bdf-977a-c8a565d1c0fd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173797.1337183} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2fe140b6-f1cc-4da6-bc86-4178bcc1bf32","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173797.1350114} authorization-1 | {"level":"info","message":"POST /relations/update 200 45ms","method":"POST","requestID":"db90ff45cea2bf117c3109f217b95da4","responseTime":45,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"db90ff45cea2bf117c3109f217b95da4"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.133683565Z"}]},"request_id":"a697f80b-d7c8-4a6b-b0fb-fe2883c29d2b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173797.169087} gateway-1 | {"time_local":"24/Sep/2024:10:29:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"db90ff45cea2bf117c3109f217b95da4"} device-1 | {"level":"info","message":"POST /devices? 201 123ms","method":"POST","requestID":"db90ff45cea2bf117c3109f217b95da4","responseTime":123,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"db90ff45cea2bf117c3109f217b95da4","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices called","requestID":"a040ddc163e3ab67e96d9426b3f78e47"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5N30.OXuEB3XYVTJcipEHSg4sDVl1bEtWBGP8DOoz2TR1Elw","level":"info","message":"auth send jwt","requestID":"a040ddc163e3ab67e96d9426b3f78e47"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a040ddc163e3ab67e96d9426b3f78e47","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:57Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.992221,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a040ddc163e3ab67e96d9426b3f78e47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173797,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5N30.OXuEB3XYVTJcipEHSg4sDVl1bEtWBGP8DOoz2TR1Elw"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"a040ddc163e3ab67e96d9426b3f78e47","responseTime":34,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c9e623dd-ddd3-4286-b1b6-5912c8f5fafb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173797.2850006} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"a040ddc163e3ab67e96d9426b3f78e47","responseTime":31,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1f3977a-aed9-4190-ab94-8d80dd48b427","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173797.2916195} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a040ddc163e3ab67e96d9426b3f78e47","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"a42cde4b-d322-4851-84a5-a7a4597eb636","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173797.3098106} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61237bb1-b739-44f6-85c2-3bdb597c5c80","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173797.3110209} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"a040ddc163e3ab67e96d9426b3f78e47","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.309781257Z"}]},"request_id":"a99f7b53-4fa0-4f44-bccd-bd3fb9d37b74","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173797.3176312} gateway-1 | {"time_local":"24/Sep/2024:10:29:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a040ddc163e3ab67e96d9426b3f78e47"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a040ddc163e3ab67e96d9426b3f78e47"} device-1 | {"level":"info","message":"POST /devices? 201 159ms","method":"POST","requestID":"a040ddc163e3ab67e96d9426b3f78e47","responseTime":159,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 34ms","method":"POST","requestID":"a040ddc163e3ab67e96d9426b3f78e47","responseTime":34,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c3e7ee03513791dd97f9cd5b42ce546f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5OH0.ZwJFpimgZ2cIAOvDAscX0bVOGyL3P6Ma5TmtLjSvI-8","level":"info","message":"auth send jwt","requestID":"c3e7ee03513791dd97f9cd5b42ce546f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c3e7ee03513791dd97f9cd5b42ce546f","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:58Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.993549,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c3e7ee03513791dd97f9cd5b42ce546f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173798,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5OH0.ZwJFpimgZ2cIAOvDAscX0bVOGyL3P6Ma5TmtLjSvI-8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c3e7ee03513791dd97f9cd5b42ce546f","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.309781257Z"}]},"request_id":"5ccc3389-0dc4-418f-89fc-34873c2f428a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173798.984382} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"c3e7ee03513791dd97f9cd5b42ce546f","responseTime":10,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c5f4b842-b500-4cef-b3e6-f7ae007bb522","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173798.9957087} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c3e7ee03513791dd97f9cd5b42ce546f","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.309781257Z"}]},"request_id":"78a1078c-fe80-435e-a897-ecc3ce903057","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173799.0380456} gateway-1 | {"time_local":"24/Sep/2024:10:29:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/051c9e23-606e-4678-a929-da14d0b1457d HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.103","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c3e7ee03513791dd97f9cd5b42ce546f"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c3e7ee03513791dd97f9cd5b42ce546f","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c3e7ee03513791dd97f9cd5b42ce546f"} device-1 | {"level":"info","message":"PATCH /devices/051c9e23-606e-4678-a929-da14d0b1457d 200 72ms","method":"PATCH","requestID":"c3e7ee03513791dd97f9cd5b42ce546f","responseTime":72,"status":200,"url":"/devices/051c9e23-606e-4678-a929-da14d0b1457d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8927c522259718b5808d3687cf4abf76"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5OX0.1aTq31qbjb-y7PRuLNvoHHTDWRhH3lN0FZZ0L4IM2TA","level":"info","message":"auth send jwt","requestID":"8927c522259718b5808d3687cf4abf76"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"8927c522259718b5808d3687cf4abf76","responseTime":9,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:29:59Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.961095,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:29:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"8927c522259718b5808d3687cf4abf76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173799,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzc5OX0.1aTq31qbjb-y7PRuLNvoHHTDWRhH3lN0FZZ0L4IM2TA"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"8927c522259718b5808d3687cf4abf76","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8927c522259718b5808d3687cf4abf76"} device-1 | {"level":"info","message":"POST /devices/051c9e23-606e-4678-a929-da14d0b1457d/websocket 200 45ms","method":"POST","requestID":"8927c522259718b5808d3687cf4abf76","responseTime":45,"status":200,"url":"/devices/051c9e23-606e-4678-a929-da14d0b1457d/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:29:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/051c9e23-606e-4678-a929-da14d0b1457d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.053","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8927c522259718b5808d3687cf4abf76"} device-1 | {"level":"info","message":"device 'http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6a95fcc71a918b07f39a0e010d237033","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":"6a95fcc71a918b07f39a0e010d237033","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6972fa19-c077-42e1-b766-2005180b2365/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":"6a95fcc71a918b07f39a0e010d237033"} device-1 | {"level":"info","message":"OPTIONS /devices/6972fa19-c077-42e1-b766-2005180b2365/websocket 200 1ms","method":"OPTIONS","requestID":"6a95fcc71a918b07f39a0e010d237033","responseTime":1,"status":200,"url":"/devices/6972fa19-c077-42e1-b766-2005180b2365/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc","level":"info","message":"auth send jwt","requestID":"2c21704db0c7d1e045d1ad264df1daac"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2c21704db0c7d1e045d1ad264df1daac","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2c21704db0c7d1e045d1ad264df1daac"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.95388,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2c21704db0c7d1e045d1ad264df1daac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173800,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2c21704db0c7d1e045d1ad264df1daac","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2c21704db0c7d1e045d1ad264df1daac"} gateway-1 | {"time_local":"24/Sep/2024:10:30:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6972fa19-c077-42e1-b766-2005180b2365/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":"2c21704db0c7d1e045d1ad264df1daac"} device-1 | {"level":"info","message":"POST /devices/6972fa19-c077-42e1-b766-2005180b2365/websocket 200 23ms","method":"POST","requestID":"2c21704db0c7d1e045d1ad264df1daac","responseTime":23,"status":200,"url":"/devices/6972fa19-c077-42e1-b766-2005180b2365/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc","level":"info","message":"auth send jwt","requestID":"ecee3c468308699fecc96298921a0808"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ecee3c468308699fecc96298921a0808","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ecee3c468308699fecc96298921a0808"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.912824,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ecee3c468308699fecc96298921a0808","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173800,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ecee3c468308699fecc96298921a0808","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.133683565Z"}]},"request_id":"1c57f881-4ed9-4daa-9b30-83d5fe6dd77a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.220529} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ecee3c468308699fecc96298921a0808","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ecee3c468308699fecc96298921a0808"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc","level":"info","message":"auth send jwt","requestID":"b902665a1e8630d2bd29ec86828d4501"} gateway-1 | {"time_local":"24/Sep/2024:10:30:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6972fa19-c077-42e1-b766-2005180b2365? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ecee3c468308699fecc96298921a0808"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b902665a1e8630d2bd29ec86828d4501","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/6972fa19-c077-42e1-b766-2005180b2365? 200 47ms","method":"GET","requestID":"ecee3c468308699fecc96298921a0808","responseTime":47,"status":200,"url":"/devices/6972fa19-c077-42e1-b766-2005180b2365?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b902665a1e8630d2bd29ec86828d4501"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940096,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b902665a1e8630d2bd29ec86828d4501","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173800,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b902665a1e8630d2bd29ec86828d4501","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.309781257Z"}]},"request_id":"34ed552e-51b7-4e81-b0b3-dec76ac3f119","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.2752564} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"b902665a1e8630d2bd29ec86828d4501","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b902665a1e8630d2bd29ec86828d4501"} gateway-1 | {"time_local":"24/Sep/2024:10:30:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/051c9e23-606e-4678-a929-da14d0b1457d? 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":"b902665a1e8630d2bd29ec86828d4501"} device-1 | {"level":"info","message":"GET /devices/051c9e23-606e-4678-a929-da14d0b1457d? 200 20ms","method":"GET","requestID":"b902665a1e8630d2bd29ec86828d4501","responseTime":20,"status":200,"url":"/devices/051c9e23-606e-4678-a929-da14d0b1457d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc","level":"info","message":"auth send jwt","requestID":"587ee835e9b36b70348541ed9d112d87"} authentication-1 | {"level":"info","message":"GET /auth 200 47ms","method":"GET","requestID":"587ee835e9b36b70348541ed9d112d87","responseTime":47,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"587ee835e9b36b70348541ed9d112d87"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.920008,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"587ee835e9b36b70348541ed9d112d87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173800,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"587ee835e9b36b70348541ed9d112d87","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Attempting to run experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Attempting to book experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Successfully booked experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3e3a940-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.270096,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3e44580-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f3e3a940-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173800,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f3e3a940-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.952328,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f3e44580-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173800,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f3e44580-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.133683565Z"}]},"request_id":"0cfd0876-baa7-48e4-8641-ec9f9b2482de","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.4180214} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f3e3a940-7a5f-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3e3a940-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/6972fa19-c077-42e1-b766-2005180b2365? 200 24ms","method":"GET","requestID":"f3e3a940-7a5f-11ef-8bac-49f2f0d74a99","responseTime":24,"status":200,"url":"/devices/6972fa19-c077-42e1-b766-2005180b2365?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.309781257Z"}]},"request_id":"65d8982c-1d4e-4205-a50c-d202435d3e16","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.4297717} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f3e44580-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3e44580-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Setting up experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} device-1 | {"level":"info","message":"GET /devices/051c9e23-606e-4678-a929-da14d0b1457d? 200 75ms","method":"GET","requestID":"f3e44580-7a5f-11ef-8bac-49f2f0d74a99","responseTime":75,"status":200,"url":"/devices/051c9e23-606e-4678-a929-da14d0b1457d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Successfully locked booking for experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Attempting to update booking for experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Successfully updated booking for experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Successfully set up experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3fd24b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.682494,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f3fd24b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173800,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"f3fd24b0-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.133683565Z"}]},"request_id":"42792231-8ba0-4552-92ab-976f0a8dddf4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.6098702} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3fd24b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4040280-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.353414,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f4040280-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173800,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"f4040280-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Successfully running experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4070fc0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.309781257Z"}]},"request_id":"0ec73b30-d495-435d-bbc2-620708380829","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.6644611} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b6d6f0f3-b1af-4e6a-b75c-5c9ec0715314","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.6680005} authorization-1 | {"level":"info","message":"POST /relations/query 200 34ms","method":"POST","requestID":"f4040280-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.003789,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f4070fc0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","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":"f3fd24b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/6972fa19-c077-42e1-b766-2005180b2365? 200 102ms","method":"GET","requestID":"f3fd24b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":102,"status":200,"url":"/devices/6972fa19-c077-42e1-b766-2005180b2365?"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"f4070fc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4040280-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/051c9e23-606e-4678-a929-da14d0b1457d? 200 62ms","method":"GET","requestID":"f4040280-7a5f-11ef-8bac-49f2f0d74a99","responseTime":62,"status":200,"url":"/devices/051c9e23-606e-4678-a929-da14d0b1457d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f40f9b40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4070fc0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/6972fa19-c077-42e1-b766-2005180b2365/signaling 200 62ms","method":"POST","requestID":"f4070fc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":62,"status":200,"url":"/devices/6972fa19-c077-42e1-b766-2005180b2365/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f410acb0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5633dee2-2191-42a6-a215-a094fa054f67#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5633dee2-2191-42a6-a215-a094fa054f67","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"c2943d1d-6b75-4cbc-a952-b304e227d9e1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.700278} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a3155e22-c673-4e66-a8aa-5685280aa72f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.7017543} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ff08e52-8fa2-414a-9bd5-8b40fdab5bc0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.7363071} authorization-1 | {"level":"info","message":"POST /relations/update 200 117ms","method":"POST","requestID":"587ee835e9b36b70348541ed9d112d87","responseTime":117,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56932","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.671138,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f40f9b40-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 20ms","method":"POST","requestID":"f40f9b40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":20,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f410acb0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","object_type":"device","rebac_allow":false,"scope_allow":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":"f410acb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":19,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.005695,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbc96577-9f67-41a8-a1d9-05615c4118d1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.7557983} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f40f9b40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/6972fa19-c077-42e1-b766-2005180b2365/signaling 200 72ms","method":"POST","requestID":"f40f9b40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":72,"status":200,"url":"/devices/6972fa19-c077-42e1-b766-2005180b2365/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f410acb0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/051c9e23-606e-4678-a929-da14d0b1457d/signaling 200 69ms","method":"POST","requestID":"f410acb0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":69,"status":200,"url":"/devices/051c9e23-606e-4678-a929-da14d0b1457d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4210060-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.45331,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78d4ec47-e8b0-4b67-9f26-d45cebfa2351","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.811739} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f4210060-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","object_type":"device","rebac_allow":false,"scope_allow":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":"f4210060-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4210060-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/051c9e23-606e-4678-a929-da14d0b1457d/signaling 200 14ms","method":"POST","requestID":"f4210060-7a5f-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/devices/051c9e23-606e-4678-a929-da14d0b1457d/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Building connection plan","requestID":"587ee835e9b36b70348541ed9d112d87"} 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":"d0e50c31-5dc0-4589-94b7-5c00bac94e30"},{"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":"22ac6524-ebc3-4f7d-8768-6ff730fc98b2"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"bd2121ff-b4b0-4510-85a0-67e981034b99"}]},"level":"info","message":"Built pairwise service configurations","requestID":"587ee835e9b36b70348541ed9d112d87"} 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/6972fa19-c077-42e1-b766-2005180b2365"},{"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/051c9e23-606e-4678-a929-da14d0b1457d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"587ee835e9b36b70348541ed9d112d87"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"587ee835e9b36b70348541ed9d112d87"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f42aeb70-7a5f-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:30:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.585","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"587ee835e9b36b70348541ed9d112d87"} experiment-1 | {"level":"info","message":"POST /experiments? 201 536ms","method":"POST","requestID":"587ee835e9b36b70348541ed9d112d87","responseTime":536,"status":201,"url":"/experiments?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc","level":"info","message":"auth send jwt","requestID":"b2d6237e2009b598de3efc974fce2cae"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b2d6237e2009b598de3efc974fce2cae","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b2d6237e2009b598de3efc974fce2cae"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.950353,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f42aeb70-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173800,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f42aeb70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.942005,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b2d6237e2009b598de3efc974fce2cae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173800,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"b2d6237e2009b598de3efc974fce2cae","responseTime":18,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.133683565Z"}]},"request_id":"2d4932d9-e0ec-450c-bcb2-fe477829116f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.9387987} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"4f9fbb39-4a33-41aa-82bb-2528f377e29d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.9396472} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b2d6237e2009b598de3efc974fce2cae"} device-1 | {"level":"info","message":"GET /devices/6972fa19-c077-42e1-b766-2005180b2365? 200 68ms","method":"GET","requestID":"b2d6237e2009b598de3efc974fce2cae","responseTime":68,"status":200,"url":"/devices/6972fa19-c077-42e1-b766-2005180b2365?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 40ms","method":"POST","requestID":"b2d6237e2009b598de3efc974fce2cae","responseTime":40,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fe36ccd0-5b98-4351-ad2b-226abe8ba222","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173800.9408472} gateway-1 | {"time_local":"24/Sep/2024:10:30:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6972fa19-c077-42e1-b766-2005180b2365? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.076","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b2d6237e2009b598de3efc974fce2cae"} authorization-1 | {"level":"info","message":"POST /relations/update 200 62ms","method":"POST","requestID":"f42aeb70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":62,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc","level":"info","message":"auth send jwt","requestID":"ac585bf569a510852abe134c775f413f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ac585bf569a510852abe134c775f413f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ac585bf569a510852abe134c775f413f"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f42aeb70-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f42aeb70-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3'","requestID":"f42aeb70-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3'","requestID":"f42aeb70-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f42aeb70-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 107ms","method":"POST","requestID":"f42aeb70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":107,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:00Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":38.280192,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ac585bf569a510852abe134c775f413f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173800,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwMH0.1hSOyzK6eqUD3FRdlFQaI3-fF-rvUbDfjd1XrC08TBc"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f42aeb70-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 43ms","method":"POST","requestID":"ac585bf569a510852abe134c775f413f","responseTime":43,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:29:57.309781257Z"}]},"request_id":"fdc5fe4f-f478-403c-a437-9ed91f38889b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173801.0159068} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ac585bf569a510852abe134c775f413f","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ac585bf569a510852abe134c775f413f"} gateway-1 | {"time_local":"24/Sep/2024:10:30:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/051c9e23-606e-4678-a929-da14d0b1457d? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.069","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ac585bf569a510852abe134c775f413f"} device-1 | {"level":"info","message":"GET /devices/051c9e23-606e-4678-a929-da14d0b1457d? 200 64ms","method":"GET","requestID":"ac585bf569a510852abe134c775f413f","responseTime":64,"status":200,"url":"/devices/051c9e23-606e-4678-a929-da14d0b1457d?"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3","device":"6972fa19-c077-42e1-b766-2005180b2365","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/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"587ee835e9b36b70348541ed9d112d87"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f44eee30-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:01Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.89242,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ce98df9-7b9a-46ea-8f03-96c43ee6a5cc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173801.151573} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f44eee30-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"f44eee30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f44eee30-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/6972fa19-c077-42e1-b766-2005180b2365/signaling 200 64ms","method":"POST","requestID":"f44eee30-7a5f-11ef-8bac-49f2f0d74a99","responseTime":64,"status":200,"url":"/devices/6972fa19-c077-42e1-b766-2005180b2365/signaling"} device-1 | {"device":"6972fa19-c077-42e1-b766-2005180b2365","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6972fa19-c077-42e1-b766-2005180b2365","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4592760-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:01Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.136549,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2aedaa2-b5f7-44df-aa1f-1191c00b85c5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173801.2158427} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f4592760-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","object_type":"device","rebac_allow":false,"scope_allow":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":"f4592760-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4592760-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/051c9e23-606e-4678-a929-da14d0b1457d/signaling 200 52ms","method":"POST","requestID":"f4592760-7a5f-11ef-8bac-49f2f0d74a99","responseTime":52,"status":200,"url":"/devices/051c9e23-606e-4678-a929-da14d0b1457d/signaling"} device-1 | {"device":"051c9e23-606e-4678-a929-da14d0b1457d","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":"84484a8b-1855-47b1-9834-2d4a9fcbf8b3","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 3301860820817981139 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:ltkf\r\na=ice-pwd:qf99xoQ0zBbVM98cx5NUcN/e\r\na=ice-options:trickle\r\na=fingerprint:sha-256 60:DF:8E:1C:8D:CE:49:E4:B6:AB:78:11:E1:6D:DF:FA:85:A0:F9:69:DF:FC:8A:C3:E4:D2:3D:40:E2:1B:8D:09\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"6972fa19-c077-42e1-b766-2005180b2365","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"051c9e23-606e-4678-a929-da14d0b1457d","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":"051c9e23-606e-4678-a929-da14d0b1457d","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":"051c9e23-606e-4678-a929-da14d0b1457d","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":"6972fa19-c077-42e1-b766-2005180b2365","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/84484a8b-1855-47b1-9834-2d4a9fcbf8b3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"84484a8b-1855-47b1-9834-2d4a9fcbf8b3","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:2327411381 1 udp 2113937151 2892c592-19ec-43a9-b330-fa4671da58f1.local 39664 typ host generation 0 ufrag ltkf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6972fa19-c077-42e1-b766-2005180b2365","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:244584650 1 udp 1677729535 141.24.211.56 39664 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ltkf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6972fa19-c077-42e1-b766-2005180b2365","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":"6f543302080de7d33f66e12e297b3049","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":"6f543302080de7d33f66e12e297b3049","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":"new","url":"http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365"},{"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/051c9e23-606e-4678-a929-da14d0b1457d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3"}}},"level":"info","message":"received a callback","requestID":"6f543302080de7d33f66e12e297b3049"} gateway-1 | {"time_local":"24/Sep/2024:10:30:03 +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":"6f543302080de7d33f66e12e297b3049"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365'"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"6f543302080de7d33f66e12e297b3049","responseTime":7,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"6972fa19-c077-42e1-b766-2005180b2365","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"6972fa19-c077-42e1-b766-2005180b2365","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"051c9e23-606e-4678-a929-da14d0b1457d","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":"84484a8b-1855-47b1-9834-2d4a9fcbf8b3","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"051c9e23-606e-4678-a929-da14d0b1457d","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":"84484a8b-1855-47b1-9834-2d4a9fcbf8b3","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6972fa19-c077-42e1-b766-2005180b2365","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/84484a8b-1855-47b1-9834-2d4a9fcbf8b3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"84484a8b-1855-47b1-9834-2d4a9fcbf8b3","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} 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/6972fa19-c077-42e1-b766-2005180b2365"},{"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/051c9e23-606e-4678-a929-da14d0b1457d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3"}}},"level":"info","message":"received a callback","requestID":"511b70e00426e79934e26c0f55a5c6c5"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"511b70e00426e79934e26c0f55a5c6c5","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 5ms","method":"GET","requestID":"511b70e00426e79934e26c0f55a5c6c5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f5aa5f80-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F84484a8b-1855-47b1-9834-2d4a9fcbf8b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e34479d-6bd7-4d3d-bb5b-f682d5525f62","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173803.4411871} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":7.152606,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f5aa5f80-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3","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 49ms","method":"POST","requestID":"f5aa5f80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f5aa5f80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3 200 104ms","method":"GET","requestID":"f5aa5f80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":104,"status":200,"url":"/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f5c27b60-7a5f-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwM30.VEExYYSPTShnJhTUf5sGDY5ElyMgkBIS6xJOKhoJR8o","level":"info","message":"auth send jwt","requestID":"e8ecf9939a200b0424afc7d898eb9dd3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 167ms","method":"POST","requestID":"511b70e00426e79934e26c0f55a5c6c5","responseTime":167,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30:03 +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.170","http_referrer":"","http_user_agent":"node-fetch","requestID":"511b70e00426e79934e26c0f55a5c6c5"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e8ecf9939a200b0424afc7d898eb9dd3","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5633dee2-2191-42a6-a215-a094fa054f67","requestID":"e8ecf9939a200b0424afc7d898eb9dd3"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.324728,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"154feab6-4aa5-4059-8ab0-2bd533cc9feb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173803.547644} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f5c27b60-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"f5c27b60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.924693,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e8ecf9939a200b0424afc7d898eb9dd3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173803,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwM30.VEExYYSPTShnJhTUf5sGDY5ElyMgkBIS6xJOKhoJR8o"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f5c27b60-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"e8ecf9939a200b0424afc7d898eb9dd3","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/6972fa19-c077-42e1-b766-2005180b2365/signaling 200 47ms","method":"POST","requestID":"f5c27b60-7a5f-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/devices/6972fa19-c077-42e1-b766-2005180b2365/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f5ca6aa0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.273732,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f539b55f-6c16-4953-a1f7-cc3409ac5a43","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173803.5996344} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f5ca6aa0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"f5ca6aa0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f5ca6aa0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/051c9e23-606e-4678-a929-da14d0b1457d/signaling 200 37ms","method":"POST","requestID":"f5ca6aa0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/devices/051c9e23-606e-4678-a929-da14d0b1457d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5633dee2-2191-42a6-a215-a094fa054f67","requestID":"e8ecf9939a200b0424afc7d898eb9dd3"} experiment-1 | {"level":"info","message":"GET /experiments/5633dee2-2191-42a6-a215-a094fa054f67 200 61ms","method":"GET","requestID":"e8ecf9939a200b0424afc7d898eb9dd3","responseTime":61,"status":200,"url":"/experiments/5633dee2-2191-42a6-a215-a094fa054f67"} gateway-1 | {"time_local":"24/Sep/2024:10:30:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5633dee2-2191-42a6-a215-a094fa054f67 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.093","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e8ecf9939a200b0424afc7d898eb9dd3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwM30.VEExYYSPTShnJhTUf5sGDY5ElyMgkBIS6xJOKhoJR8o","level":"info","message":"auth send jwt","requestID":"b5ef3b358f01acd577de3baef1ecf184"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b5ef3b358f01acd577de3baef1ecf184","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5633dee2-2191-42a6-a215-a094fa054f67","requestID":"b5ef3b358f01acd577de3baef1ecf184"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.92231,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b5ef3b358f01acd577de3baef1ecf184","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173803,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwM30.VEExYYSPTShnJhTUf5sGDY5ElyMgkBIS6xJOKhoJR8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b5ef3b358f01acd577de3baef1ecf184","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Attempting to finish experiment","requestID":"b5ef3b358f01acd577de3baef1ecf184"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f5da7030-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.886967,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f5da7030-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173803,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwM30.VEExYYSPTShnJhTUf5sGDY5ElyMgkBIS6xJOKhoJR8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f5da7030-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3","device":"6972fa19-c077-42e1-b766-2005180b2365","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/84484a8b-1855-47b1-9834-2d4a9fcbf8b3' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"84484a8b-1855-47b1-9834-2d4a9fcbf8b3","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F84484a8b-1855-47b1-9834-2d4a9fcbf8b3': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F84484a8b-1855-47b1-9834-2d4a9fcbf8b3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"b007f868-a4d1-46ce-8ba3-b5ef7b7d838f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173803.755406} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3977dd01-66f6-4cce-bdd6-978e0e8a748c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173803.780491} authorization-1 | {"level":"info","message":"POST /relations/update 200 37ms","method":"POST","requestID":"f5da7030-7a5f-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0b5b3c95fb99f0cea8a6b02e420d5d9d","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":"051c9e23-606e-4678-a929-da14d0b1457d","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":"051c9e23-606e-4678-a929-da14d0b1457d","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"}} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0b5b3c95fb99f0cea8a6b02e420d5d9d","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/6972fa19-c077-42e1-b766-2005180b2365"},{"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/051c9e23-606e-4678-a929-da14d0b1457d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3"}}},"level":"info","message":"received a callback","requestID":"0b5b3c95fb99f0cea8a6b02e420d5d9d"} device-1 | {"device":"051c9e23-606e-4678-a929-da14d0b1457d","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":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f5da7030-7a5f-11ef-8bac-49f2f0d74a99"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bc36b27fa898eebf2831de2f6260387f","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":"bc36b27fa898eebf2831de2f6260387f","responseTime":1,"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/6972fa19-c077-42e1-b766-2005180b2365"},{"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/051c9e23-606e-4678-a929-da14d0b1457d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3"}}},"level":"info","message":"received a callback","requestID":"bc36b27fa898eebf2831de2f6260387f"} device-1 | {"level":"info","message":"DELETE /peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3 204 102ms","method":"DELETE","requestID":"f5da7030-7a5f-11ef-8bac-49f2f0d74a99","responseTime":102,"status":204,"url":"/peerconnections/84484a8b-1855-47b1-9834-2d4a9fcbf8b3"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5633dee2-2191-42a6-a215-a094fa054f67"},"level":"info","message":"Successfully finished experiment","requestID":"b5ef3b358f01acd577de3baef1ecf184"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f5f09040-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.506265,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6972fa19-c077-42e1-b766-2005180b2365","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d73df3dd-88bf-4a1f-9763-1801642e9fae","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173803.8580904} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f5f09040-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365","object_type":"device","rebac_allow":false,"scope_allow":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":"f5f09040-7a5f-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f5f09040-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/6972fa19-c077-42e1-b766-2005180b2365/signaling 200 53ms","method":"POST","requestID":"f5f09040-7a5f-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/devices/6972fa19-c077-42e1-b766-2005180b2365/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f5f91bc0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5633dee2-2191-42a6-a215-a094fa054f67': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5633dee2-2191-42a6-a215-a094fa054f67","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"67bebe49-9609-4d2a-a6dd-ea2fe83ea93c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173803.9049025} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"091a987b-bf35-4a37-b258-222f942d0057","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173803.9102335} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F051c9e23-606e-4678-a929-da14d0b1457d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b1ee70c9-edfb-4daa-8062-9a3970c73ecb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173803.910742} authorization-1 | {"level":"info","message":"POST /relations/update 200 94ms","method":"POST","requestID":"b5ef3b358f01acd577de3baef1ecf184","responseTime":94,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":29.584248,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f5f91bc0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"f5f91bc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f5f91bc0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/051c9e23-606e-4678-a929-da14d0b1457d/signaling 200 53ms","method":"POST","requestID":"f5f91bc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/devices/051c9e23-606e-4678-a929-da14d0b1457d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5633dee2-2191-42a6-a215-a094fa054f67","requestID":"b5ef3b358f01acd577de3baef1ecf184"} gateway-1 | {"time_local":"24/Sep/2024:10:30:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5633dee2-2191-42a6-a215-a094fa054f67 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.467","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b5ef3b358f01acd577de3baef1ecf184"} experiment-1 | {"level":"info","message":"DELETE /experiments/5633dee2-2191-42a6-a215-a094fa054f67 204 431ms","method":"DELETE","requestID":"b5ef3b358f01acd577de3baef1ecf184","responseTime":431,"status":204,"url":"/experiments/5633dee2-2191-42a6-a215-a094fa054f67"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 331ms","method":"POST","requestID":"0b5b3c95fb99f0cea8a6b02e420d5d9d","responseTime":331,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 316ms","method":"POST","requestID":"bc36b27fa898eebf2831de2f6260387f","responseTime":316,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.362","http_referrer":"","http_user_agent":"node-fetch","requestID":"0b5b3c95fb99f0cea8a6b02e420d5d9d"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.352","http_referrer":"","http_user_agent":"node-fetch","requestID":"bc36b27fa898eebf2831de2f6260387f"} gateway-1 | {"time_local":"24/Sep/2024:10:30:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2836","request_time":"5.015","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1685fe7523b2df4f127f95258ae1073c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwNH0.Ez9miRhCsEq1Yo2lygpHSmLcONs22W_ZQPNPXdjg40Q","level":"info","message":"auth send jwt","requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c"} gateway-1 | {"time_local":"24/Sep/2024:10:30:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2751","request_time":"3.988","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":"ed844a61a08e869255a82f55e435e85f"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:04Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.008523,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173804,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwNH0.Ez9miRhCsEq1Yo2lygpHSmLcONs22W_ZQPNPXdjg40Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6972fa19-c077-42e1-b766-2005180b2365' closed"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/051c9e23-606e-4678-a929-da14d0b1457d' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"396fef65-a0fd-43d1-81c3-081d597afc7e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173804.263079} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c82f85fd-b0d3-42e4-8f74-2a808bd74fe4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173804.2697792} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"cbf13ed2-4b3b-4c0d-bd34-ead84204ee65","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173804.310264} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"400e23c1-6786-4df5-a46f-30da134da101","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173804.3115976} authorization-1 | {"level":"info","message":"POST /relations/update 200 44ms","method":"POST","requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c","responseTime":44,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.310234320Z"}]},"request_id":"50b56734-982d-4156-8c33-c0da4e461b82","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173804.3540523} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c","responseTime":3,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.259","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c"} device-1 | {"level":"info","message":"POST /devices? 201 224ms","method":"POST","requestID":"d0eda8ea5741cd200bdeec41cf6b3d9c","responseTime":224,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwNH0.Ez9miRhCsEq1Yo2lygpHSmLcONs22W_ZQPNPXdjg40Q","level":"info","message":"auth send jwt","requestID":"2528a1fa2060ab64d823f7e69606c6bb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2528a1fa2060ab64d823f7e69606c6bb","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2528a1fa2060ab64d823f7e69606c6bb"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:04Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.927327,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2528a1fa2060ab64d823f7e69606c6bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173804,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwNH0.Ez9miRhCsEq1Yo2lygpHSmLcONs22W_ZQPNPXdjg40Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 103ms","method":"POST","requestID":"2528a1fa2060ab64d823f7e69606c6bb","responseTime":103,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"164dab09-360f-4097-931f-96dcdeb50a44","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173804.613094} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"2528a1fa2060ab64d823f7e69606c6bb","responseTime":28,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7dfc3fe3-84d3-4b2b-a2dc-e4b34a1b6caf","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173804.6188555} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2528a1fa2060ab64d823f7e69606c6bb","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"83e4100a-2ede-4dde-ad1f-c76e1676ea18","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173804.637151} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30bb6269-11d8-48dd-ab66-cfe1d5d892f1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173804.6383781} authorization-1 | {"level":"info","message":"POST /relations/update 200 48ms","method":"POST","requestID":"2528a1fa2060ab64d823f7e69606c6bb","responseTime":48,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.637119667Z"}]},"request_id":"c9e62011-5426-40f9-a0a0-e82563114fec","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173804.6738112} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2528a1fa2060ab64d823f7e69606c6bb"} device-1 | {"level":"info","message":"POST /devices? 201 261ms","method":"POST","requestID":"2528a1fa2060ab64d823f7e69606c6bb","responseTime":261,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"2528a1fa2060ab64d823f7e69606c6bb","responseTime":11,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.270","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2528a1fa2060ab64d823f7e69606c6bb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwNn0.HRiZTvRzqbmWYNX2Q4diZjKRxIRuWv4mNZ-fharArF8","level":"info","message":"auth send jwt","requestID":"3984d23b8287c07565a74896f989eff8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3984d23b8287c07565a74896f989eff8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3984d23b8287c07565a74896f989eff8"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:06Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.911425,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3984d23b8287c07565a74896f989eff8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173806,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwNn0.HRiZTvRzqbmWYNX2Q4diZjKRxIRuWv4mNZ-fharArF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3984d23b8287c07565a74896f989eff8","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.310234320Z"}]},"request_id":"01b14cb6-40a6-4b05-aecf-fab8553e3590","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173806.3460305} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3984d23b8287c07565a74896f989eff8","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a55be6ba-641e-45df-8787-a87634d827c2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173806.352576} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3984d23b8287c07565a74896f989eff8","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.310234320Z"}]},"request_id":"51f59d57-98ee-482d-a0f4-14cd815e0b9e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173806.3939283} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3984d23b8287c07565a74896f989eff8"} gateway-1 | {"time_local":"24/Sep/2024:10:30:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.095","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3984d23b8287c07565a74896f989eff8"} device-1 | {"level":"info","message":"PATCH /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7 200 88ms","method":"PATCH","requestID":"3984d23b8287c07565a74896f989eff8","responseTime":88,"status":200,"url":"/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3984d23b8287c07565a74896f989eff8","responseTime":6,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwNn0.HRiZTvRzqbmWYNX2Q4diZjKRxIRuWv4mNZ-fharArF8","level":"info","message":"auth send jwt","requestID":"35a17e7c763c896efa5d6410016c92dd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"35a17e7c763c896efa5d6410016c92dd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"35a17e7c763c896efa5d6410016c92dd"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:06Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.873601,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"35a17e7c763c896efa5d6410016c92dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173806,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwNn0.HRiZTvRzqbmWYNX2Q4diZjKRxIRuWv4mNZ-fharArF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"35a17e7c763c896efa5d6410016c92dd","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:30:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.063","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"35a17e7c763c896efa5d6410016c92dd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"35a17e7c763c896efa5d6410016c92dd"} device-1 | {"level":"info","message":"POST /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/websocket 200 57ms","method":"POST","requestID":"35a17e7c763c896efa5d6410016c92dd","responseTime":57,"status":200,"url":"/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7' connected"} device-1 | {"level":"info","message":"OPTIONS /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/websocket 200 1ms","method":"OPTIONS","requestID":"64d2898a9cd3a9723c153a39226be6fc","responseTime":1,"status":200,"url":"/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"64d2898a9cd3a9723c153a39226be6fc","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":"64d2898a9cd3a9723c153a39226be6fc","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/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":"64d2898a9cd3a9723c153a39226be6fc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"119a74935c1bbf2e9c095e719499efa9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk","level":"info","message":"auth send jwt","requestID":"119a74935c1bbf2e9c095e719499efa9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"119a74935c1bbf2e9c095e719499efa9","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.933721,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"119a74935c1bbf2e9c095e719499efa9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173808,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"119a74935c1bbf2e9c095e719499efa9","responseTime":30,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"119a74935c1bbf2e9c095e719499efa9"} gateway-1 | {"time_local":"24/Sep/2024:10:30:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.085","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":"119a74935c1bbf2e9c095e719499efa9"} device-1 | {"level":"info","message":"POST /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/websocket 200 79ms","method":"POST","requestID":"119a74935c1bbf2e9c095e719499efa9","responseTime":79,"status":200,"url":"/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651' connected"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9a301704ceeb36b985f0a7c3586e6890"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk","level":"info","message":"auth send jwt","requestID":"9a301704ceeb36b985f0a7c3586e6890"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"9a301704ceeb36b985f0a7c3586e6890","responseTime":29,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.946707,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9a301704ceeb36b985f0a7c3586e6890","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173808,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9a301704ceeb36b985f0a7c3586e6890","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.310234320Z"}]},"request_id":"da8d9f7f-9fe1-4e28-917f-e03cf8fcca77","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.2283633} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9a301704ceeb36b985f0a7c3586e6890","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9a301704ceeb36b985f0a7c3586e6890"} device-1 | {"level":"info","message":"GET /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7? 200 15ms","method":"GET","requestID":"9a301704ceeb36b985f0a7c3586e6890","responseTime":15,"status":200,"url":"/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a301704ceeb36b985f0a7c3586e6890"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk","level":"info","message":"auth send jwt","requestID":"d7efb9d82ff841ef85892a79ee338cf5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d7efb9d82ff841ef85892a79ee338cf5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7efb9d82ff841ef85892a79ee338cf5"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.371849,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d7efb9d82ff841ef85892a79ee338cf5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173808,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"d7efb9d82ff841ef85892a79ee338cf5","responseTime":34,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.637119667Z"}]},"request_id":"6cb65abe-df6f-45a2-8cbf-bb727948ab85","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.3268948} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d7efb9d82ff841ef85892a79ee338cf5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7efb9d82ff841ef85892a79ee338cf5"} device-1 | {"level":"info","message":"GET /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651? 200 89ms","method":"GET","requestID":"d7efb9d82ff841ef85892a79ee338cf5","responseTime":89,"status":200,"url":"/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.096","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d7efb9d82ff841ef85892a79ee338cf5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk","level":"info","message":"auth send jwt","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"416b1e5da0a6d624e73dee63cfdb5b58","responseTime":8,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.958577,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"416b1e5da0a6d624e73dee63cfdb5b58","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173808,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 39ms","method":"POST","requestID":"416b1e5da0a6d624e73dee63cfdb5b58","responseTime":39,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Attempting to run experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Attempting to book experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Successfully booked experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f8b7eda0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f8b83bc0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.925311,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f8b7eda0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173808,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"f8b7eda0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.037629,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f8b83bc0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173808,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"f8b83bc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.637119667Z"}]},"request_id":"b0054bbb-d2eb-4259-9b2d-863bf9d71cd9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.5598857} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.310234320Z"}]},"request_id":"a38f3bfa-cc08-469b-903f-6691c3238dfc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.5606198} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f8b83bc0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651? 200 59ms","method":"GET","requestID":"f8b83bc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"f8b83bc0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f8b7eda0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7? 200 67ms","method":"GET","requestID":"f8b7eda0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":67,"status":200,"url":"/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 16ms","method":"POST","requestID":"f8b7eda0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Setting up experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Successfully locked booking for experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Attempting to update booking for experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Successfully updated booking for experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Successfully set up experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f8d7f8c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f8d846e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f8dc8ca0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932037,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f8d7f8c0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173808,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"f8d7f8c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124845,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f8d846e0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173808,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"f8d846e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.356811,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Successfully running experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13712bd7-8473-49b6-83ef-ad23dce9dfe3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.756924} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f8dc8ca0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","object_type":"device","rebac_allow":false,"scope_allow":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":"f8dc8ca0-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.310234320Z"}]},"request_id":"0c5b96c4-1297-4679-ab9e-3f55acb7cebd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.7927806} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.637119667Z"}]},"request_id":"0eda90bf-64dc-4c8e-bc3e-4b76b6f6a6d7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.7951434} authorization-1 | {"level":"info","message":"POST /relations/query 200 33ms","method":"POST","requestID":"f8d7f8c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f8d846e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f8dc8ca0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/signaling 200 58ms","method":"POST","requestID":"f8dc8ca0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":58,"status":200,"url":"/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f8d7f8c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7? 200 94ms","method":"GET","requestID":"f8d7f8c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":94,"status":200,"url":"/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb8523cfe-a1bf-4d2c-a224-22c654daf697#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb8523cfe-a1bf-4d2c-a224-22c654daf697","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"050c0d4b-df2e-4761-b2e6-942f602cdfe3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.8082297} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58b04241-0613-449e-9388-9c7222d1919e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.8095887} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f8d846e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651? 200 95ms","method":"GET","requestID":"f8d846e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":95,"status":200,"url":"/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f8e6ece0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/update 200 52ms","method":"POST","requestID":"416b1e5da0a6d624e73dee63cfdb5b58","responseTime":52,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f8eb59b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6aa1dc84-fc92-44aa-8668-4a25f91343b4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.84472} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.734893,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f8e6ece0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","object_type":"device","rebac_allow":false,"scope_allow":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":"f8e6ece0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56c01c63-6714-4370-a1ea-fad8e2261db0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.8528967} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.687966,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f8eb59b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","object_type":"device","rebac_allow":false,"scope_allow":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":"f8eb59b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} experiment-1 | {"level":"info","message":"POST /experiments? 201 484ms","method":"POST","requestID":"416b1e5da0a6d624e73dee63cfdb5b58","responseTime":484,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.494","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk","level":"info","message":"auth send jwt","requestID":"60a53578285b57b2c55781fe0f1592ea"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"60a53578285b57b2c55781fe0f1592ea","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f8e6ece0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/signaling 200 49ms","method":"POST","requestID":"f8e6ece0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60a53578285b57b2c55781fe0f1592ea"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.956258,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"60a53578285b57b2c55781fe0f1592ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173808,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"60a53578285b57b2c55781fe0f1592ea","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f8eb59b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/signaling 200 61ms","method":"POST","requestID":"f8eb59b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":61,"status":200,"url":"/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f8f544c0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.310234320Z"}]},"request_id":"e2de3941-5cd7-466e-9b34-e8fcb22ed6cd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.9048026} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"60a53578285b57b2c55781fe0f1592ea","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60a53578285b57b2c55781fe0f1592ea"} gateway-1 | {"time_local":"24/Sep/2024:10:30:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.091","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"60a53578285b57b2c55781fe0f1592ea"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk","level":"info","message":"auth send jwt","requestID":"f4540fa62c5924c1a3adbdc96b18f1cb"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f4540fa62c5924c1a3adbdc96b18f1cb","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7? 200 67ms","method":"GET","requestID":"60a53578285b57b2c55781fe0f1592ea","responseTime":67,"status":200,"url":"/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4540fa62c5924c1a3adbdc96b18f1cb"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"client_addr":"127.0.0.1:34580","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.886781,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f4540fa62c5924c1a3adbdc96b18f1cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173808,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f4540fa62c5924c1a3adbdc96b18f1cb","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7320c27d-8484-4732-a205-8b32d10a224a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173808.9926965} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.598029,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f8f544c0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","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":"f8f544c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/signaling 200 139ms","method":"POST","requestID":"f8f544c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":139,"status":200,"url":"/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Building connection plan","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} 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":"5cf1101c-058c-464c-8706-6ea19329f211"},{"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":"ce321b13-826a-4c52-8152-065003f0f8f9"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"6593bcf4-180c-47f0-be1f-29547ad1f299"}]},"level":"info","message":"Built pairwise service configurations","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} 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/2c017f0b-2e01-46d8-ac6b-da9d76031651"},{"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/488f1a93-78fd-4330-aa25-86ad94efe7f7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f90b16b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 116ms","method":"POST","requestID":"f8f544c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":116,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:09Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":25.340196,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f90b16b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173808,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgwOH0.QR06FW94uNeeG807nBrBN7FNj_zyImadsO-G_T9H4Yk"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"f90b16b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":34,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:04.637119667Z"}]},"request_id":"2cf09040-00aa-4c12-a960-d87a7a4a46b4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173809.0815856} authorization-1 | {"level":"info","message":"POST /relations/query 200 39ms","method":"POST","requestID":"f4540fa62c5924c1a3adbdc96b18f1cb","responseTime":39,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4540fa62c5924c1a3adbdc96b18f1cb"} gateway-1 | {"time_local":"24/Sep/2024:10:30:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4540fa62c5924c1a3adbdc96b18f1cb"} device-1 | {"level":"info","message":"GET /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651? 200 138ms","method":"GET","requestID":"f4540fa62c5924c1a3adbdc96b18f1cb","responseTime":138,"status":200,"url":"/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"5c8ba115-07f1-4420-821e-f45422460b09","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173809.0962431} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e59ff87-c394-421e-b246-8e26bfdb0e06","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173809.0975935} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"f90b16b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f90b16b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f90b16b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d'","requestID":"f90b16b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d'","requestID":"f90b16b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f90b16b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 92ms","method":"POST","requestID":"f90b16b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":92,"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":"f90b16b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d","device":"2c017f0b-2e01-46d8-ac6b-da9d76031651","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 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f93274d0-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"416b1e5da0a6d624e73dee63cfdb5b58"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:09Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73850cbc-5a6f-4795-8c12-5bbc947e78a8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173809.315521} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.143824,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f93274d0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","object_type":"device","rebac_allow":false,"scope_allow":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":"f93274d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f93274d0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/signaling 200 39ms","method":"POST","requestID":"f93274d0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9388f50-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:09Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.142712,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:09Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4260c5a6-a298-4fe2-a2b3-e68d6bffdfe8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173809.3645163} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f9388f50-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","object_type":"device","rebac_allow":false,"scope_allow":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":"f9388f50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9388f50-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/signaling 200 47ms","method":"POST","requestID":"f9388f50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/signaling"} device-1 | {"device":"2c017f0b-2e01-46d8-ac6b-da9d76031651","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2c017f0b-2e01-46d8-ac6b-da9d76031651","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"488f1a93-78fd-4330-aa25-86ad94efe7f7","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":"5b5d124e-e461-4fd5-85d9-165d5ffe690d","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 8691376053183212353 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:fMvi\r\na=ice-pwd:uE19QWj2+k/H0kQY8RkA5NvU\r\na=ice-options:trickle\r\na=fingerprint:sha-256 FC:72:90:DB:E8:BD:FD:BB:1A:B7:D5:A0:51:75:BF:81:71:88:9F:2B:C6:62:0C:64:06:FF:FB:DC:4D:5A:A5:0F\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"2c017f0b-2e01-46d8-ac6b-da9d76031651","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"488f1a93-78fd-4330-aa25-86ad94efe7f7","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":"488f1a93-78fd-4330-aa25-86ad94efe7f7","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":"488f1a93-78fd-4330-aa25-86ad94efe7f7","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/5b5d124e-e461-4fd5-85d9-165d5ffe690d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5b5d124e-e461-4fd5-85d9-165d5ffe690d","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c189360ece5de04d1c5c55d43fe0b373","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":"c189360ece5de04d1c5c55d43fe0b373","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/2c017f0b-2e01-46d8-ac6b-da9d76031651"},{"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/488f1a93-78fd-4330-aa25-86ad94efe7f7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d"}}},"level":"info","message":"received a callback","requestID":"c189360ece5de04d1c5c55d43fe0b373"} device-1 | {"content":{"candidate":"candidate:1900520621 1 udp 2113937151 10034265-c4f2-4e8c-aaef-7b998ceef6a6.local 36251 typ host generation 0 ufrag fMvi network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2c017f0b-2e01-46d8-ac6b-da9d76031651","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"2c017f0b-2e01-46d8-ac6b-da9d76031651","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3798730174 1 udp 1677729535 141.24.211.56 36251 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag fMvi network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2c017f0b-2e01-46d8-ac6b-da9d76031651","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"2c017f0b-2e01-46d8-ac6b-da9d76031651","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 58ms","method":"POST","requestID":"c189360ece5de04d1c5c55d43fe0b373","responseTime":58,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30:11 +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.063","http_referrer":"","http_user_agent":"node-fetch","requestID":"c189360ece5de04d1c5c55d43fe0b373"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651'"} device-1 | {"data":{"peerconnection":"5b5d124e-e461-4fd5-85d9-165d5ffe690d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"488f1a93-78fd-4330-aa25-86ad94efe7f7","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":"2c017f0b-2e01-46d8-ac6b-da9d76031651","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"488f1a93-78fd-4330-aa25-86ad94efe7f7","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":"5b5d124e-e461-4fd5-85d9-165d5ffe690d","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/5b5d124e-e461-4fd5-85d9-165d5ffe690d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5b5d124e-e461-4fd5-85d9-165d5ffe690d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"200e4c2e5a167266198fded513fd3e12","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":"200e4c2e5a167266198fded513fd3e12","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/2c017f0b-2e01-46d8-ac6b-da9d76031651"},{"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/488f1a93-78fd-4330-aa25-86ad94efe7f7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d"}}},"level":"info","message":"received a callback","requestID":"200e4c2e5a167266198fded513fd3e12"} device-1 | {"device":"2c017f0b-2e01-46d8-ac6b-da9d76031651","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fa78fe90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fa78fe90-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d 200 53ms","method":"GET","requestID":"fa78fe90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":6.744723,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5b5d124e-e461-4fd5-85d9-165d5ffe690d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54ee9d02-45ff-40fc-843b-1f43f71f0cc8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173811.4863887} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fa78fe90-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d","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 89ms","method":"POST","requestID":"fa78fe90-7a5f-11ef-8bac-49f2f0d74a99","responseTime":89,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa8d9800-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"200e4c2e5a167266198fded513fd3e12","responseTime":143,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":9.419081,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd12fc3d-20e7-4bdb-9483-a847ff0f1a28","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173811.5970576} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fa8d9800-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxMX0.OWP6WWnwsM5hg3OM4hLNxOmq1ZJCT8jmaLwKJQtwO6c","level":"info","message":"auth send jwt","requestID":"feee3254738d36ade94297fd88751df0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"feee3254738d36ade94297fd88751df0","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30:11 +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.168","http_referrer":"","http_user_agent":"node-fetch","requestID":"200e4c2e5a167266198fded513fd3e12"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697","requestID":"feee3254738d36ade94297fd88751df0"} authorization-1 | {"level":"info","message":"POST /authorize 200 19ms","method":"POST","requestID":"fa8d9800-7a5f-11ef-8bac-49f2f0d74a99","responseTime":19,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa8d9800-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.978457,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"feee3254738d36ade94297fd88751df0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173811,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxMX0.OWP6WWnwsM5hg3OM4hLNxOmq1ZJCT8jmaLwKJQtwO6c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"feee3254738d36ade94297fd88751df0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/signaling 200 58ms","method":"POST","requestID":"fa8d9800-7a5f-11ef-8bac-49f2f0d74a99","responseTime":58,"status":200,"url":"/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa9698b0-7a5f-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:30:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.088","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"feee3254738d36ade94297fd88751df0"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697","requestID":"feee3254738d36ade94297fd88751df0"} experiment-1 | {"level":"info","message":"GET /experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697 200 80ms","method":"GET","requestID":"feee3254738d36ade94297fd88751df0","responseTime":80,"status":200,"url":"/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.384467,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd33e17e-aa33-49b8-a542-257cac1203d7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173811.7036798} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fa9698b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","object_type":"device","rebac_allow":false,"scope_allow":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":"fa9698b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxMX0.OWP6WWnwsM5hg3OM4hLNxOmq1ZJCT8jmaLwKJQtwO6c","level":"info","message":"auth send jwt","requestID":"759193d9e2fdb41bcc4120bd946c6edd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"759193d9e2fdb41bcc4120bd946c6edd","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697","requestID":"759193d9e2fdb41bcc4120bd946c6edd"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.98404,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"759193d9e2fdb41bcc4120bd946c6edd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173811,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxMX0.OWP6WWnwsM5hg3OM4hLNxOmq1ZJCT8jmaLwKJQtwO6c"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"759193d9e2fdb41bcc4120bd946c6edd","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa9698b0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/signaling 200 115ms","method":"POST","requestID":"fa9698b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":115,"status":200,"url":"/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/signaling"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"faae8d80-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Attempting to finish experiment","requestID":"759193d9e2fdb41bcc4120bd946c6edd"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.034603,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"faae8d80-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173811,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxMX0.OWP6WWnwsM5hg3OM4hLNxOmq1ZJCT8jmaLwKJQtwO6c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"faae8d80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d","device":"2c017f0b-2e01-46d8-ac6b-da9d76031651","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"488f1a93-78fd-4330-aa25-86ad94efe7f7","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":"488f1a93-78fd-4330-aa25-86ad94efe7f7","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":"488f1a93-78fd-4330-aa25-86ad94efe7f7","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/5b5d124e-e461-4fd5-85d9-165d5ffe690d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5b5d124e-e461-4fd5-85d9-165d5ffe690d","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"afbb2401142dc5285a3dfe80d57c1435","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":"afbb2401142dc5285a3dfe80d57c1435","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5b5d124e-e461-4fd5-85d9-165d5ffe690d': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5b5d124e-e461-4fd5-85d9-165d5ffe690d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"b94cb9d2-2df3-4e3d-8419-9377dfe97b82","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173811.860317} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a6f3c21972a90c29d3fefeb583e6965f","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":"a6f3c21972a90c29d3fefeb583e6965f","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4571c691-197b-43be-aacc-3c7b1570df3f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173811.861657} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"faae8d80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":23,"status":200,"url":"/relations/update"} 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/2c017f0b-2e01-46d8-ac6b-da9d76031651"},{"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/488f1a93-78fd-4330-aa25-86ad94efe7f7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d"}}},"level":"info","message":"received a callback","requestID":"afbb2401142dc5285a3dfe80d57c1435"} 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/2c017f0b-2e01-46d8-ac6b-da9d76031651"},{"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/488f1a93-78fd-4330-aa25-86ad94efe7f7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d"}}},"level":"info","message":"received a callback","requestID":"a6f3c21972a90c29d3fefeb583e6965f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"faae8d80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d 204 102ms","method":"DELETE","requestID":"faae8d80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":102,"status":204,"url":"/peerconnections/5b5d124e-e461-4fd5-85d9-165d5ffe690d"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"},"level":"info","message":"Successfully finished experiment","requestID":"759193d9e2fdb41bcc4120bd946c6edd"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb8523cfe-a1bf-4d2c-a224-22c654daf697': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb8523cfe-a1bf-4d2c-a224-22c654daf697","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"ecc4eeee-e6bb-49fc-960d-b451b5ba68a7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.0122747} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16027568-b062-4267-9fb5-f3f3b243a520","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.0136003} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"759193d9e2fdb41bcc4120bd946c6edd","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fad52850-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:12Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2c017f0b-2e01-46d8-ac6b-da9d76031651","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3833d7a4-2cac-457a-8d61-b0b0e7d667bb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.0590944} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.187659,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fad52850-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651","object_type":"device","rebac_allow":false,"scope_allow":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":"fad52850-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fad52850-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/signaling 200 18ms","method":"POST","requestID":"fad52850-7a5f-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fad83590-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:12Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.210673,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:12Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F488f1a93-78fd-4330-aa25-86ad94efe7f7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"387351d2-fc2b-4d84-9914-452e942a476e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.1033092} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fad83590-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"fad83590-7a5f-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fad83590-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/signaling 200 40ms","method":"POST","requestID":"fad83590-7a5f-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697","requestID":"759193d9e2fdb41bcc4120bd946c6edd"} gateway-1 | {"time_local":"24/Sep/2024:10:30:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.535","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"759193d9e2fdb41bcc4120bd946c6edd"} experiment-1 | {"level":"info","message":"DELETE /experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697 204 531ms","method":"DELETE","requestID":"759193d9e2fdb41bcc4120bd946c6edd","responseTime":531,"status":204,"url":"/experiments/b8523cfe-a1bf-4d2c-a224-22c654daf697"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 376ms","method":"POST","requestID":"afbb2401142dc5285a3dfe80d57c1435","responseTime":376,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30:12 +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.383","http_referrer":"","http_user_agent":"node-fetch","requestID":"afbb2401142dc5285a3dfe80d57c1435"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxMn0.FnNmN0PihMTVcXRXZRW-LsJmy-BnlLc9plnpW0suGPI","level":"info","message":"auth send jwt","requestID":"06c57cb2289ae25673ca6b151a3ea7d3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"06c57cb2289ae25673ca6b151a3ea7d3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"06c57cb2289ae25673ca6b151a3ea7d3"} gateway-1 | {"time_local":"24/Sep/2024:10:30:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2749","request_time":"4.125","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":"4732419d44415c9a87681706a03813ef"} gateway-1 | {"time_local":"24/Sep/2024:10:30:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2839","request_time":"5.796","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"53a3cc08c0a079e2d8d3a6d5f1727ca2"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:12Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 402ms","method":"POST","requestID":"a6f3c21972a90c29d3fefeb583e6965f","responseTime":402,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.93349,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"06c57cb2289ae25673ca6b151a3ea7d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173812,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxMn0.FnNmN0PihMTVcXRXZRW-LsJmy-BnlLc9plnpW0suGPI"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"06c57cb2289ae25673ca6b151a3ea7d3","responseTime":37,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:30:12 +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.435","http_referrer":"","http_user_agent":"node-fetch","requestID":"a6f3c21972a90c29d3fefeb583e6965f"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/488f1a93-78fd-4330-aa25-86ad94efe7f7' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2c017f0b-2e01-46d8-ac6b-da9d76031651' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"74d51d80-1670-4c23-86cb-f2bafd36e87d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.35691} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"06c57cb2289ae25673ca6b151a3ea7d3","responseTime":9,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6875ccd-3115-4e96-80d5-817ea83deb1e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.3655787} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"06c57cb2289ae25673ca6b151a3ea7d3","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ffc862a7-49b9-4b90-a445-0879290eab65","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.4047775} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"0905d9f3-2d3e-4679-9b66-5f9e0675d10c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.406412} authorization-1 | {"level":"info","message":"POST /relations/update 200 42ms","method":"POST","requestID":"06c57cb2289ae25673ca6b151a3ea7d3","responseTime":42,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"06c57cb2289ae25673ca6b151a3ea7d3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.406379283Z"}]},"request_id":"1024cecd-0469-4b56-a364-701bf263073e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.4144428} device-1 | {"level":"info","message":"POST /devices? 201 170ms","method":"POST","requestID":"06c57cb2289ae25673ca6b151a3ea7d3","responseTime":170,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"06c57cb2289ae25673ca6b151a3ea7d3"} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"06c57cb2289ae25673ca6b151a3ea7d3","responseTime":11,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices called","requestID":"09ff2b1cc6d96e749dde651ddd042618"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxMn0.FnNmN0PihMTVcXRXZRW-LsJmy-BnlLc9plnpW0suGPI","level":"info","message":"auth send jwt","requestID":"09ff2b1cc6d96e749dde651ddd042618"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"09ff2b1cc6d96e749dde651ddd042618","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:12Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.932169,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"09ff2b1cc6d96e749dde651ddd042618","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173812,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxMn0.FnNmN0PihMTVcXRXZRW-LsJmy-BnlLc9plnpW0suGPI"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"09ff2b1cc6d96e749dde651ddd042618","responseTime":31,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0ac6be2d-a61f-4712-9b8c-4274112c99ea","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.4923291} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"09ff2b1cc6d96e749dde651ddd042618","responseTime":7,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e303e547-d9d6-48ce-b289-5ead72114d30","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.4996636} authorization-1 | {"level":"info","message":"POST /relations/update 200 38ms","method":"POST","requestID":"09ff2b1cc6d96e749dde651ddd042618","responseTime":38,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"93ebc5ae-2f73-4a7c-8c81-51345eeaea66","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.5486896} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca7e461b-7abb-44a3-a96a-b5efbf470db8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.5498633} authorization-1 | {"level":"info","message":"POST /relations/update 200 98ms","method":"POST","requestID":"09ff2b1cc6d96e749dde651ddd042618","responseTime":98,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.548660149Z"}]},"request_id":"c503347f-8b78-40c6-bff6-9a752a4baba0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173812.5987496} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"09ff2b1cc6d96e749dde651ddd042618"} device-1 | {"level":"info","message":"POST /devices? 201 167ms","method":"POST","requestID":"09ff2b1cc6d96e749dde651ddd042618","responseTime":167,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"09ff2b1cc6d96e749dde651ddd042618","responseTime":7,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:30:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"09ff2b1cc6d96e749dde651ddd042618"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNH0.tRyVDfi8KHjWVBD1QGUgbabd0tZim3Owp4RTBLM-etw","level":"info","message":"auth send jwt","requestID":"e15368c7aa04786e21e347c371fafa9a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e15368c7aa04786e21e347c371fafa9a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e15368c7aa04786e21e347c371fafa9a"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:14Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.892695,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e15368c7aa04786e21e347c371fafa9a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173814,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNH0.tRyVDfi8KHjWVBD1QGUgbabd0tZim3Owp4RTBLM-etw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e15368c7aa04786e21e347c371fafa9a","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.406379283Z"}]},"request_id":"8b290e03-6709-448c-8e2a-994397bed88f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173814.203119} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"e15368c7aa04786e21e347c371fafa9a","responseTime":31,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c15f4d8d-464a-478d-a708-b9885f05a68d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173814.2371402} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e15368c7aa04786e21e347c371fafa9a","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.406379283Z"}]},"request_id":"7252d0db-e09a-4709-a9ad-79d1c39918ba","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173814.2864673} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e15368c7aa04786e21e347c371fafa9a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e15368c7aa04786e21e347c371fafa9a"} device-1 | {"level":"info","message":"PATCH /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2 200 98ms","method":"PATCH","requestID":"e15368c7aa04786e21e347c371fafa9a","responseTime":98,"status":200,"url":"/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2"} gateway-1 | {"time_local":"24/Sep/2024:10:30:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.105","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e15368c7aa04786e21e347c371fafa9a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"24e7cea074dad4e71e65de840fcc8b18"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNH0.tRyVDfi8KHjWVBD1QGUgbabd0tZim3Owp4RTBLM-etw","level":"info","message":"auth send jwt","requestID":"24e7cea074dad4e71e65de840fcc8b18"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"24e7cea074dad4e71e65de840fcc8b18","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:14Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.977971,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"24e7cea074dad4e71e65de840fcc8b18","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173814,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNH0.tRyVDfi8KHjWVBD1QGUgbabd0tZim3Owp4RTBLM-etw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"24e7cea074dad4e71e65de840fcc8b18","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"24e7cea074dad4e71e65de840fcc8b18"} gateway-1 | {"time_local":"24/Sep/2024:10:30:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.067","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"24e7cea074dad4e71e65de840fcc8b18"} device-1 | {"level":"info","message":"POST /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/websocket 200 60ms","method":"POST","requestID":"24e7cea074dad4e71e65de840fcc8b18","responseTime":60,"status":200,"url":"/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cbe16c096a73c299eba0b3eb950d32c9","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":"cbe16c096a73c299eba0b3eb950d32c9","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/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":"cbe16c096a73c299eba0b3eb950d32c9"} device-1 | {"level":"info","message":"OPTIONS /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/websocket 200 1ms","method":"OPTIONS","requestID":"cbe16c096a73c299eba0b3eb950d32c9","responseTime":1,"status":200,"url":"/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNX0.BOEbflyJA4f1ydtxjtbjbNq_dxaeBNUvJarG3sTvxEE","level":"info","message":"auth send jwt","requestID":"6aa762a6c912daa7cd1c19f414ef5696"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6aa762a6c912daa7cd1c19f414ef5696","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6aa762a6c912daa7cd1c19f414ef5696"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.894695,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"6aa762a6c912daa7cd1c19f414ef5696","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173815,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNX0.BOEbflyJA4f1ydtxjtbjbNq_dxaeBNUvJarG3sTvxEE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6aa762a6c912daa7cd1c19f414ef5696","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6aa762a6c912daa7cd1c19f414ef5696"} gateway-1 | {"time_local":"24/Sep/2024:10:30:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.098","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":"6aa762a6c912daa7cd1c19f414ef5696"} device-1 | {"level":"info","message":"POST /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/websocket 200 91ms","method":"POST","requestID":"6aa762a6c912daa7cd1c19f414ef5696","responseTime":91,"status":200,"url":"/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNX0.BOEbflyJA4f1ydtxjtbjbNq_dxaeBNUvJarG3sTvxEE","level":"info","message":"auth send jwt","requestID":"52a3b7609027236619e54ae1558429a9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"52a3b7609027236619e54ae1558429a9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52a3b7609027236619e54ae1558429a9"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:15Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.009111,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"52a3b7609027236619e54ae1558429a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173815,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNX0.BOEbflyJA4f1ydtxjtbjbNq_dxaeBNUvJarG3sTvxEE"} authorization-1 | {"level":"info","message":"POST /authorize 200 43ms","method":"POST","requestID":"52a3b7609027236619e54ae1558429a9","responseTime":43,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.406379283Z"}]},"request_id":"ea6f4337-a54a-4129-9a3c-d040241f0de4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173815.9567728} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"52a3b7609027236619e54ae1558429a9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52a3b7609027236619e54ae1558429a9"} device-1 | {"level":"info","message":"GET /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2? 200 61ms","method":"GET","requestID":"52a3b7609027236619e54ae1558429a9","responseTime":61,"status":200,"url":"/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"52a3b7609027236619e54ae1558429a9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM","level":"info","message":"auth send jwt","requestID":"0b48097a39833be8e3eda685c340861f"} authentication-1 | {"level":"info","message":"GET /auth 200 167ms","method":"GET","requestID":"0b48097a39833be8e3eda685c340861f","responseTime":167,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b48097a39833be8e3eda685c340861f"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.994464,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0b48097a39833be8e3eda685c340861f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173816,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b48097a39833be8e3eda685c340861f","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.548660149Z"}]},"request_id":"34f940ca-ee06-440e-bece-88c0400e2fed","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.1540673} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b48097a39833be8e3eda685c340861f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b48097a39833be8e3eda685c340861f"} gateway-1 | {"time_local":"24/Sep/2024:10:30:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.189","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0b48097a39833be8e3eda685c340861f"} device-1 | {"level":"info","message":"GET /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e? 200 16ms","method":"GET","requestID":"0b48097a39833be8e3eda685c340861f","responseTime":16,"status":200,"url":"/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM","level":"info","message":"auth send jwt","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} authentication-1 | {"level":"info","message":"GET /auth 200 22ms","method":"GET","requestID":"f5a423939cc1dde7815d5c55fc68ffb6","responseTime":22,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.996437,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f5a423939cc1dde7815d5c55fc68ffb6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173816,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f5a423939cc1dde7815d5c55fc68ffb6","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Attempting to run experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Attempting to book experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Successfully booked experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fd562de0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.910935,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fd562de0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173816,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fd562de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fd5a73a0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.826668,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fd5a73a0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173816,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fd5a73a0-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.406379283Z"}]},"request_id":"e2a5f5b3-67d0-4c6e-9d59-297787c1e1bf","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.3074515} authorization-1 | {"level":"info","message":"POST /relations/query 200 36ms","method":"POST","requestID":"fd562de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":36,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.548660149Z"}]},"request_id":"57ba0eb0-e0e1-4cf3-bf7a-d898d17b9c82","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.3331404} authorization-1 | {"level":"info","message":"POST /relations/query 200 35ms","method":"POST","requestID":"fd5a73a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":35,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fd562de0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2? 200 95ms","method":"GET","requestID":"fd562de0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":95,"status":200,"url":"/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fd5a73a0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e? 200 68ms","method":"GET","requestID":"fd5a73a0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":68,"status":200,"url":"/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Setting up experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Successfully set up experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fd8924c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fd8972e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd8d6a80-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":25.000129,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fd8924c0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173816,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"fd8924c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":30,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Successfully running experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.044662,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fd8972e0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173816,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"fd8972e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.886821,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f60403d-c435-4241-aafa-7082affb9d54","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.6242242} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fd8d6a80-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","object_type":"device","rebac_allow":false,"scope_allow":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":"fd8d6a80-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.406379283Z"}]},"request_id":"de821e71-7c90-4c74-9672-40937cd93965","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.6291392} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fd8924c0-7a5f-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.548660149Z"}]},"request_id":"f891d6fd-7ece-4645-8f01-92ca7671cf4a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.6359634} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fd8972e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd8d6a80-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/signaling 200 52ms","method":"POST","requestID":"fd8d6a80-7a5f-11ef-8bac-49f2f0d74a99","responseTime":52,"status":200,"url":"/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fd8924c0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2? 200 82ms","method":"GET","requestID":"fd8924c0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":82,"status":200,"url":"/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fd8972e0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e? 200 83ms","method":"GET","requestID":"fd8972e0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":83,"status":200,"url":"/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff061dc3b-adcb-43d4-951f-82fd3e846126#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff061dc3b-adcb-43d4-951f-82fd3e846126","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"e7bb0db4-d0c0-4974-893e-035cd2f34239","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.6768854} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f4378bf1-5094-4a91-9170-42d918140e0b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.6783307} authorization-1 | {"level":"info","message":"POST /relations/update 200 57ms","method":"POST","requestID":"f5a423939cc1dde7815d5c55fc68ffb6","responseTime":57,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd977ca0-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd9c1080-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"POST /experiments? 201 533ms","method":"POST","requestID":"f5a423939cc1dde7815d5c55fc68ffb6","responseTime":533,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c022b94-1336-4138-b3d2-f2fcc57abf67","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.7143357} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} gateway-1 | {"time_local":"24/Sep/2024:10:30:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.558","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f843862-017d-4071-a8cb-c0ae76f2453f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.723433} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.046242,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":39.126645,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM","level":"info","message":"auth send jwt","requestID":"fb4861e2215a0257d9f3bcdb9e2cf73a"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"fb4861e2215a0257d9f3bcdb9e2cf73a","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb4861e2215a0257d9f3bcdb9e2cf73a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fd9c1080-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 46ms","method":"POST","requestID":"fd9c1080-7a5f-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fd977ca0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 80ms","method":"POST","requestID":"fd977ca0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":80,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.936863,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fb4861e2215a0257d9f3bcdb9e2cf73a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173816,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd9c1080-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fb4861e2215a0257d9f3bcdb9e2cf73a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/signaling 200 59ms","method":"POST","requestID":"fd9c1080-7a5f-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd977ca0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/signaling 200 90ms","method":"POST","requestID":"fd977ca0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":90,"status":200,"url":"/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.406379283Z"}]},"request_id":"0940c837-0c5a-4ea7-8e1f-e597b095a1e2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.7784753} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fda649b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/query 200 37ms","method":"POST","requestID":"fb4861e2215a0257d9f3bcdb9e2cf73a","responseTime":37,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb4861e2215a0257d9f3bcdb9e2cf73a"} device-1 | {"level":"info","message":"GET /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2? 200 89ms","method":"GET","requestID":"fb4861e2215a0257d9f3bcdb9e2cf73a","responseTime":89,"status":200,"url":"/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2?"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} gateway-1 | {"time_local":"24/Sep/2024:10:30:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.100","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fb4861e2215a0257d9f3bcdb9e2cf73a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM","level":"info","message":"auth send jwt","requestID":"1e8622098e7169307aef347cc2aebef5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1e8622098e7169307aef347cc2aebef5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e8622098e7169307aef347cc2aebef5"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"614555bd-918c-4c62-a181-6f5c005291d3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.8566751} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":38.283602,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fda649b0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","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":"fda649b0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 53ms","method":"POST","requestID":"fda649b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Building connection plan","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} 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":"3e03182c-5ded-4811-bfe1-9c376246f921"},{"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":"4bc1046c-7f49-472d-ad01-619c2e89eab6"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"68267329-47d3-47e7-82aa-5c23768d0540"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} 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/cb7be05b-c6ca-4f2c-999e-4a98c975393e"},{"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/4d49e1c8-9b77-4188-b7f7-454b04cc55a2"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} device-1 | {"level":"info","message":"POST /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/signaling 200 92ms","method":"POST","requestID":"fda649b0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":92,"status":200,"url":"/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"fdb4a190-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.776824,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1e8622098e7169307aef347cc2aebef5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173816,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM"} authorization-1 | {"level":"info","message":"POST /authorize 200 21ms","method":"POST","requestID":"1e8622098e7169307aef347cc2aebef5","responseTime":21,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.95658,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fdb4a190-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173816,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxNn0.BYgAHUN4ASIf-XmcCXp6qXjWJsZa0MnFjOA45VHMjMM"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"fdb4a190-7a5f-11ef-8bac-49f2f0d74a99","responseTime":14,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:12.548660149Z"}]},"request_id":"b9aaf953-e6a0-4d6b-908f-5781e8239ae1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173816.920356} authorization-1 | {"level":"info","message":"POST /relations/query 200 39ms","method":"POST","requestID":"1e8622098e7169307aef347cc2aebef5","responseTime":39,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e8622098e7169307aef347cc2aebef5"} gateway-1 | {"time_local":"24/Sep/2024:10:30:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1e8622098e7169307aef347cc2aebef5"} device-1 | {"level":"info","message":"GET /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e? 200 132ms","method":"GET","requestID":"1e8622098e7169307aef347cc2aebef5","responseTime":132,"status":200,"url":"/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"92bf0821-afed-483f-839f-52e30dfae3d2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173817.0089304} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33eb680e-a943-4d96-ae36-8f385d460192","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173817.0097346} authorization-1 | {"level":"info","message":"POST /relations/update 200 39ms","method":"POST","requestID":"fdb4a190-7a5f-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"fdb4a190-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"fdb4a190-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75'","requestID":"fdb4a190-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75'","requestID":"fdb4a190-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"fdb4a190-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 187ms","method":"POST","requestID":"fdb4a190-7a5f-11ef-8bac-49f2f0d74a99","responseTime":187,"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":"fdb4a190-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75","device":"cb7be05b-c6ca-4f2c-999e-4a98c975393e","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} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f5a423939cc1dde7815d5c55fc68ffb6"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:17Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fde80da0-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"device":"cb7be05b-c6ca-4f2c-999e-4a98c975393e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"cb7be05b-c6ca-4f2c-999e-4a98c975393e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fde80da0-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"120fee5b-a73e-4992-b92f-ba7fce9b7b20","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173817.2156394} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.07085,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fde80da0-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","object_type":"device","rebac_allow":false,"scope_allow":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":"fde80da0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/signaling 200 42ms","method":"POST","requestID":"fde80da0-7a5f-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fdee9d50-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:17Z"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.688275,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:17Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8bae2168-ab54-40d0-8f01-261455d0bc33","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173817.2621307} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fdee9d50-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 17ms","method":"POST","requestID":"fdee9d50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fdee9d50-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/signaling 200 48ms","method":"POST","requestID":"fdee9d50-7a5f-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/signaling"} device-1 | {"device":"4d49e1c8-9b77-4188-b7f7-454b04cc55a2","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":"48d5cb55-1822-4101-a670-e5324f3acc75","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 6196058831375014992 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:IVRO\r\na=ice-pwd:vz7TKbbY/PHBk3ZJCyF5mzOy\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8E:6D:DE:DE:3C:D5:7E:57:54:84:8B:8B:D9:1D:23:C6:D4:A5:4A:97:33:41:A0:62:34:5B:3C:BD:73:06:06:FA\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"cb7be05b-c6ca-4f2c-999e-4a98c975393e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"4d49e1c8-9b77-4188-b7f7-454b04cc55a2","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":"4d49e1c8-9b77-4188-b7f7-454b04cc55a2","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":"4d49e1c8-9b77-4188-b7f7-454b04cc55a2","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/48d5cb55-1822-4101-a670-e5324f3acc75' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"48d5cb55-1822-4101-a670-e5324f3acc75","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eccb0bd85bbba684b9c751d657085ca6","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":"eccb0bd85bbba684b9c751d657085ca6","responseTime":1,"status":200,"url":"/auth"} device-1 | {"content":{"candidate":"candidate:931496186 1 udp 2113937151 2e000f4a-e3bc-48bf-9ce0-1fda2383e774.local 35387 typ host generation 0 ufrag IVRO network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"cb7be05b-c6ca-4f2c-999e-4a98c975393e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"cb7be05b-c6ca-4f2c-999e-4a98c975393e","deviceName":"JS Device 2","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":[{"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/cb7be05b-c6ca-4f2c-999e-4a98c975393e"},{"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/4d49e1c8-9b77-4188-b7f7-454b04cc55a2"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75"}}},"level":"info","message":"received a callback","requestID":"eccb0bd85bbba684b9c751d657085ca6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"eccb0bd85bbba684b9c751d657085ca6","responseTime":7,"status":200,"url":"/callbacks/experiment"} device-1 | {"content":{"candidate":"candidate:2762875369 1 udp 1677729535 141.24.211.56 35387 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag IVRO network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"cb7be05b-c6ca-4f2c-999e-4a98c975393e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"eccb0bd85bbba684b9c751d657085ca6"} device-1 | {"device":"cb7be05b-c6ca-4f2c-999e-4a98c975393e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"4d49e1c8-9b77-4188-b7f7-454b04cc55a2","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":"cb7be05b-c6ca-4f2c-999e-4a98c975393e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"4d49e1c8-9b77-4188-b7f7-454b04cc55a2","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":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e'"} device-1 | {"data":{"peerconnection":"48d5cb55-1822-4101-a670-e5324f3acc75","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"cb7be05b-c6ca-4f2c-999e-4a98c975393e","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"48d5cb55-1822-4101-a670-e5324f3acc75","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/48d5cb55-1822-4101-a670-e5324f3acc75' to 'http://localhost/callbacks/experiment'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3d7f48ff8158273783b7cba09c12d4be","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 | {"data":{"peerconnection":"48d5cb55-1822-4101-a670-e5324f3acc75","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} 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/cb7be05b-c6ca-4f2c-999e-4a98c975393e"},{"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/4d49e1c8-9b77-4188-b7f7-454b04cc55a2"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75"}}},"level":"info","message":"received a callback","requestID":"3d7f48ff8158273783b7cba09c12d4be"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3d7f48ff8158273783b7cba09c12d4be","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F48d5cb55-1822-4101-a670-e5324f3acc75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"76f376e9-aa11-4c47-9074-de0de7e1ae8e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173819.5497413} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.493796,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:19Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ff4c0a70-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ff4c0a70-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75","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":"ff4c0a70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxOX0.zjSwpSVidznsyXi4GDxrlF5Q44A4naS1w8ObEVqjeT0","level":"info","message":"auth send jwt","requestID":"e50d3b7b2448cee85cb8d2e23cacc2c8"} authentication-1 | {"level":"info","message":"GET /auth 200 21ms","method":"GET","requestID":"e50d3b7b2448cee85cb8d2e23cacc2c8","responseTime":21,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","requestID":"e50d3b7b2448cee85cb8d2e23cacc2c8"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.881348,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e50d3b7b2448cee85cb8d2e23cacc2c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173819,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxOX0.zjSwpSVidznsyXi4GDxrlF5Q44A4naS1w8ObEVqjeT0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e50d3b7b2448cee85cb8d2e23cacc2c8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ff4c0a70-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75 200 55ms","method":"GET","requestID":"ff4c0a70-7a5f-11ef-8bac-49f2f0d74a99","responseTime":55,"status":200,"url":"/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75"} gateway-1 | {"time_local":"24/Sep/2024:10:30:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126 HTTP/1.1","status": "200","body_bytes_sent":"1362","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e50d3b7b2448cee85cb8d2e23cacc2c8"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","requestID":"e50d3b7b2448cee85cb8d2e23cacc2c8"} experiment-1 | {"level":"info","message":"GET /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126 200 76ms","method":"GET","requestID":"e50d3b7b2448cee85cb8d2e23cacc2c8","responseTime":76,"status":200,"url":"/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 213ms","method":"POST","requestID":"3d7f48ff8158273783b7cba09c12d4be","responseTime":213,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.218","http_referrer":"","http_user_agent":"node-fetch","requestID":"3d7f48ff8158273783b7cba09c12d4be"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff65fb10-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20c7d3a9-9f1d-46b0-bbae-9a85ca28b62b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173819.7527082} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.445289,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ff65fb10-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 40ms","method":"POST","requestID":"ff65fb10-7a5f-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff65fb10-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/signaling 200 54ms","method":"POST","requestID":"ff65fb10-7a5f-11ef-8bac-49f2f0d74a99","responseTime":54,"status":200,"url":"/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxOX0.zjSwpSVidznsyXi4GDxrlF5Q44A4naS1w8ObEVqjeT0","level":"info","message":"auth send jwt","requestID":"d4c44284bf35b243b0edaf1508f2c6c8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d4c44284bf35b243b0edaf1508f2c6c8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ff72a540-7a5f-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","requestID":"d4c44284bf35b243b0edaf1508f2c6c8"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"client_addr":"127.0.0.1:33232","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.269397,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.93868,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1154a3a8-555a-4577-a3e8-19660ac8c63b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173819.8017273} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ff72a540-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","object_type":"device","rebac_allow":false,"scope_allow":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":"ff72a540-7a5f-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d4c44284bf35b243b0edaf1508f2c6c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173819,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxOX0.zjSwpSVidznsyXi4GDxrlF5Q44A4naS1w8ObEVqjeT0"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d4c44284bf35b243b0edaf1508f2c6c8","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","requestID":"d4c44284bf35b243b0edaf1508f2c6c8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ff72a540-7a5f-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:30:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.085","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d4c44284bf35b243b0edaf1508f2c6c8"} experiment-1 | {"level":"info","message":"GET /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126 200 54ms","method":"GET","requestID":"d4c44284bf35b243b0edaf1508f2c6c8","responseTime":54,"status":200,"url":"/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"} device-1 | {"level":"info","message":"POST /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/signaling 200 55ms","method":"POST","requestID":"ff72a540-7a5f-11ef-8bac-49f2f0d74a99","responseTime":55,"status":200,"url":"/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxOX0.zjSwpSVidznsyXi4GDxrlF5Q44A4naS1w8ObEVqjeT0","level":"info","message":"auth send jwt","requestID":"9065d890b9b949d7d5869c1af20be49d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9065d890b9b949d7d5869c1af20be49d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","requestID":"9065d890b9b949d7d5869c1af20be49d"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.979712,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9065d890b9b949d7d5869c1af20be49d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173819,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxOX0.zjSwpSVidznsyXi4GDxrlF5Q44A4naS1w8ObEVqjeT0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9065d890b9b949d7d5869c1af20be49d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Attempting to finish experiment","requestID":"9065d890b9b949d7d5869c1af20be49d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ff83bc40-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.974532,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ff83bc40-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173819,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgxOX0.zjSwpSVidznsyXi4GDxrlF5Q44A4naS1w8ObEVqjeT0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff83bc40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75","device":"cb7be05b-c6ca-4f2c-999e-4a98c975393e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"4d49e1c8-9b77-4188-b7f7-454b04cc55a2","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":"4d49e1c8-9b77-4188-b7f7-454b04cc55a2","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":"4d49e1c8-9b77-4188-b7f7-454b04cc55a2","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/48d5cb55-1822-4101-a670-e5324f3acc75' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"48d5cb55-1822-4101-a670-e5324f3acc75","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0d4f73aea6c0c40400870b5050172f35","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":"0d4f73aea6c0c40400870b5050172f35","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8bf5567930d1ce789ad41f2b1a99b062","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":"8bf5567930d1ce789ad41f2b1a99b062","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":"closed","url":"http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e"},{"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/4d49e1c8-9b77-4188-b7f7-454b04cc55a2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75"}}},"level":"info","message":"received a callback","requestID":"0d4f73aea6c0c40400870b5050172f35"} 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/cb7be05b-c6ca-4f2c-999e-4a98c975393e"},{"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/4d49e1c8-9b77-4188-b7f7-454b04cc55a2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75"}}},"level":"info","message":"received a callback","requestID":"8bf5567930d1ce789ad41f2b1a99b062"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F48d5cb55-1822-4101-a670-e5324f3acc75': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F48d5cb55-1822-4101-a670-e5324f3acc75","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"21591d57-b0dc-461c-936a-89c91a61ac17","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173819.96799} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"835d9ca4-07b3-44ec-b283-11ab1c0905e6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173819.9694257} authorization-1 | {"level":"info","message":"POST /relations/update 200 45ms","method":"POST","requestID":"ff83bc40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ff83bc40-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75 204 168ms","method":"DELETE","requestID":"ff83bc40-7a5f-11ef-8bac-49f2f0d74a99","responseTime":168,"status":204,"url":"/peerconnections/48d5cb55-1822-4101-a670-e5324f3acc75"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"},"level":"info","message":"Successfully finished experiment","requestID":"9065d890b9b949d7d5869c1af20be49d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ffaa3000-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:20Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcb7be05b-c6ca-4f2c-999e-4a98c975393e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a999b62-3d77-4445-84f2-a0cbfe5b3c29","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.1660917} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.470815,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ffaa3000-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e","object_type":"device","rebac_allow":false,"scope_allow":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":"ffaa3000-7a5f-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff061dc3b-adcb-43d4-951f-82fd3e846126': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff061dc3b-adcb-43d4-951f-82fd3e846126","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"1791bdf6-911e-45c7-9862-6e5f5f0cff2c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.169} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c992f910-cc9e-4c25-81fa-978391dc9923","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.1708477} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"9065d890b9b949d7d5869c1af20be49d","responseTime":29,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ffaa3000-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/signaling 200 47ms","method":"POST","requestID":"ffaa3000-7a5f-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ffb18300-7a5f-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:20Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d49e1c8-9b77-4188-b7f7-454b04cc55a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"728de73c-628a-43e6-af4c-da1802c05c95","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.2144346} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.767368,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ffb18300-7a5f-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2","object_type":"device","rebac_allow":false,"scope_allow":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":"ffb18300-7a5f-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ffb18300-7a5f-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/signaling 200 22ms","method":"POST","requestID":"ffb18300-7a5f-11ef-8bac-49f2f0d74a99","responseTime":22,"status":200,"url":"/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126","requestID":"9065d890b9b949d7d5869c1af20be49d"} gateway-1 | {"time_local":"24/Sep/2024:10:30:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.481","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9065d890b9b949d7d5869c1af20be49d"} experiment-1 | {"level":"info","message":"DELETE /experiments/f061dc3b-adcb-43d4-951f-82fd3e846126 204 477ms","method":"DELETE","requestID":"9065d890b9b949d7d5869c1af20be49d","responseTime":477,"status":204,"url":"/experiments/f061dc3b-adcb-43d4-951f-82fd3e846126"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 369ms","method":"POST","requestID":"0d4f73aea6c0c40400870b5050172f35","responseTime":369,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 369ms","method":"POST","requestID":"8bf5567930d1ce789ad41f2b1a99b062","responseTime":370,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2838","request_time":"5.949","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1407951c48dd2ec8303a7692b60835eb"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.379","http_referrer":"","http_user_agent":"node-fetch","requestID":"0d4f73aea6c0c40400870b5050172f35"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.377","http_referrer":"","http_user_agent":"node-fetch","requestID":"8bf5567930d1ce789ad41f2b1a99b062"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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":"4.492","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":"49c9d6cbc66bdb9ea732980a725b02ac"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/cb7be05b-c6ca-4f2c-999e-4a98c975393e' closed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMH0.oCa1ncFwg8P8vJCYTGzGiezcR09Y4jwD1KWct_Mrfrg","level":"info","message":"auth send jwt","requestID":"ac53530399901093c87f9f2850c0deab"} authentication-1 | {"level":"info","message":"GET /auth 200 30ms","method":"GET","requestID":"ac53530399901093c87f9f2850c0deab","responseTime":30,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ac53530399901093c87f9f2850c0deab"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4d49e1c8-9b77-4188-b7f7-454b04cc55a2' closed"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:20Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.013138,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ac53530399901093c87f9f2850c0deab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173820,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMH0.oCa1ncFwg8P8vJCYTGzGiezcR09Y4jwD1KWct_Mrfrg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ac53530399901093c87f9f2850c0deab","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f3025d42-12c1-4756-81c7-9db2222c1d72","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.4562109} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ac53530399901093c87f9f2850c0deab","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"169a4003-6c11-4fa6-9c5e-55675020d45d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.4639673} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ac53530399901093c87f9f2850c0deab","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"7fc4a316-3501-4329-9f40-6ced13e18382","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.5062048} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60a3547e-7618-4b1e-a2f7-23a4636595c9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.5073624} authorization-1 | {"level":"info","message":"POST /relations/update 200 42ms","method":"POST","requestID":"ac53530399901093c87f9f2850c0deab","responseTime":42,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.506174616Z"}]},"request_id":"a71ddcb9-16c7-498d-a048-533b402bcd29","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.5135748} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ac53530399901093c87f9f2850c0deab","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ac53530399901093c87f9f2850c0deab"} device-1 | {"level":"info","message":"POST /devices? 201 124ms","method":"POST","requestID":"ac53530399901093c87f9f2850c0deab","responseTime":124,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ac53530399901093c87f9f2850c0deab"} device-1 | {"level":"info","message":"postDevices called","requestID":"fad7157755ce21a05c18b87603df5cd3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMH0.oCa1ncFwg8P8vJCYTGzGiezcR09Y4jwD1KWct_Mrfrg","level":"info","message":"auth send jwt","requestID":"fad7157755ce21a05c18b87603df5cd3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fad7157755ce21a05c18b87603df5cd3","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:20Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.589203,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"fad7157755ce21a05c18b87603df5cd3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173820,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMH0.oCa1ncFwg8P8vJCYTGzGiezcR09Y4jwD1KWct_Mrfrg"} authorization-1 | {"level":"info","message":"POST /authorize 200 52ms","method":"POST","requestID":"fad7157755ce21a05c18b87603df5cd3","responseTime":52,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"51c8fdb8-f4a0-49c5-9b27-e5e79caf53d5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.5993748} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"fad7157755ce21a05c18b87603df5cd3","responseTime":31,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c1856e79-67bc-4418-bc03-a04bb2bda2a5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.6312313} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"fad7157755ce21a05c18b87603df5cd3","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"a3e2aeff-2589-460f-928d-4635a5199ed2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.6485355} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f7426b6-3fa0-4bf4-a7d5-d76cbaa3bb0f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.649917} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"fad7157755ce21a05c18b87603df5cd3","responseTime":22,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.648502118Z"}]},"request_id":"3017e6b2-e0f0-4fda-b910-bfc1806d84a5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173820.6573522} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fad7157755ce21a05c18b87603df5cd3"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fad7157755ce21a05c18b87603df5cd3"} device-1 | {"level":"info","message":"POST /devices? 201 159ms","method":"POST","requestID":"fad7157755ce21a05c18b87603df5cd3","responseTime":159,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 29ms","method":"POST","requestID":"fad7157755ce21a05c18b87603df5cd3","responseTime":29,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMX0.xFsm31b8TUmPYv4cQRoZZ8l_G59tN_I1Wq7U8k85h-k","level":"info","message":"auth send jwt","requestID":"43a14a9d0e822e7566da4089a3663463"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"43a14a9d0e822e7566da4089a3663463"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:21Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.92309,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"43a14a9d0e822e7566da4089a3663463","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173821,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMX0.xFsm31b8TUmPYv4cQRoZZ8l_G59tN_I1Wq7U8k85h-k"} authentication-1 | {"level":"info","message":"GET /auth 200 17ms","method":"GET","requestID":"43a14a9d0e822e7566da4089a3663463","responseTime":17,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"43a14a9d0e822e7566da4089a3663463","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.648502118Z"}]},"request_id":"9d84bf64-bdeb-4ba6-a2d8-5ee256b876d7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173821.9711435} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"43a14a9d0e822e7566da4089a3663463","responseTime":9,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c379f8c-84a4-4dac-a4b9-3f2dbfff9ffb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173821.9813354} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"43a14a9d0e822e7566da4089a3663463","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.648502118Z"}]},"request_id":"53313a8d-94d6-4cd6-808e-ec147406ef91","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.0245607} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"43a14a9d0e822e7566da4089a3663463"} gateway-1 | {"time_local":"24/Sep/2024:10:30:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.079","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"43a14a9d0e822e7566da4089a3663463"} device-1 | {"level":"info","message":"PATCH /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a 200 74ms","method":"PATCH","requestID":"43a14a9d0e822e7566da4089a3663463","responseTime":74,"status":200,"url":"/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"43a14a9d0e822e7566da4089a3663463","responseTime":7,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs","level":"info","message":"auth send jwt","requestID":"3ce1e9f8963ab0f6ffb1385aac8a3951"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3ce1e9f8963ab0f6ffb1385aac8a3951","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3ce1e9f8963ab0f6ffb1385aac8a3951"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.007644,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3ce1e9f8963ab0f6ffb1385aac8a3951","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs","level":"info","message":"auth send jwt","requestID":"bdb537457aeb0dc1f4b2041ace3184cb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bdb537457aeb0dc1f4b2041ace3184cb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bdb537457aeb0dc1f4b2041ace3184cb"} authorization-1 | {"level":"info","message":"POST /authorize 200 44ms","method":"POST","requestID":"3ce1e9f8963ab0f6ffb1385aac8a3951","responseTime":44,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.062105,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bdb537457aeb0dc1f4b2041ace3184cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bdb537457aeb0dc1f4b2041ace3184cb","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3ce1e9f8963ab0f6ffb1385aac8a3951"} device-1 | {"level":"info","message":"POST /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/websocket 200 62ms","method":"POST","requestID":"3ce1e9f8963ab0f6ffb1385aac8a3951","responseTime":62,"status":200,"url":"/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:30:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.070","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3ce1e9f8963ab0f6ffb1385aac8a3951"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.506174616Z"}]},"request_id":"29dfbbf1-1c6c-425d-beef-a4a68a1bffcb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.108829} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bdb537457aeb0dc1f4b2041ace3184cb","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3345da8a-9bea-49f7-9ade-12feee86731d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.1159887} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"bdb537457aeb0dc1f4b2041ace3184cb","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.506174616Z"}]},"request_id":"20f490ab-151a-41c2-a989-3ae67883028c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.198206} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"bdb537457aeb0dc1f4b2041ace3184cb","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bdb537457aeb0dc1f4b2041ace3184cb"} gateway-1 | {"time_local":"24/Sep/2024:10:30:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a19ff035-614e-4356-9971-48dbf441afac HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.153","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bdb537457aeb0dc1f4b2041ace3184cb"} device-1 | {"level":"info","message":"PATCH /devices/a19ff035-614e-4356-9971-48dbf441afac 200 145ms","method":"PATCH","requestID":"bdb537457aeb0dc1f4b2041ace3184cb","responseTime":145,"status":200,"url":"/devices/a19ff035-614e-4356-9971-48dbf441afac"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs","level":"info","message":"auth send jwt","requestID":"86d4b65f27da9aeeab3133fe88ed4a9e"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"86d4b65f27da9aeeab3133fe88ed4a9e","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"86d4b65f27da9aeeab3133fe88ed4a9e"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.994071,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"86d4b65f27da9aeeab3133fe88ed4a9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"86d4b65f27da9aeeab3133fe88ed4a9e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"86d4b65f27da9aeeab3133fe88ed4a9e"} device-1 | {"level":"info","message":"POST /devices/a19ff035-614e-4356-9971-48dbf441afac/websocket 200 19ms","method":"POST","requestID":"86d4b65f27da9aeeab3133fe88ed4a9e","responseTime":19,"status":200,"url":"/devices/a19ff035-614e-4356-9971-48dbf441afac/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:30:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a19ff035-614e-4356-9971-48dbf441afac/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"86d4b65f27da9aeeab3133fe88ed4a9e"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs","level":"info","message":"auth send jwt","requestID":"54c9b235ec1ad364821d1675fb6eac24"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"54c9b235ec1ad364821d1675fb6eac24","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.016898,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"54c9b235ec1ad364821d1675fb6eac24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54c9b235ec1ad364821d1675fb6eac24","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54c9b235ec1ad364821d1675fb6eac24"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.506174616Z"}]},"request_id":"7b24694e-39ef-48c9-a02e-d35d51b0277f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.276338} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"54c9b235ec1ad364821d1675fb6eac24","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54c9b235ec1ad364821d1675fb6eac24"} device-1 | {"level":"info","message":"GET /devices/a19ff035-614e-4356-9971-48dbf441afac? 200 41ms","method":"GET","requestID":"54c9b235ec1ad364821d1675fb6eac24","responseTime":41,"status":200,"url":"/devices/a19ff035-614e-4356-9971-48dbf441afac?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a19ff035-614e-4356-9971-48dbf441afac? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"54c9b235ec1ad364821d1675fb6eac24"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs","level":"info","message":"auth send jwt","requestID":"e405dd8b696c7e91c8577e93b3db80d2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e405dd8b696c7e91c8577e93b3db80d2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e405dd8b696c7e91c8577e93b3db80d2"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.445434,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e405dd8b696c7e91c8577e93b3db80d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e405dd8b696c7e91c8577e93b3db80d2","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.648502118Z"}]},"request_id":"65b2d5b5-0620-4626-9a5e-6194d72d02bd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.324229} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e405dd8b696c7e91c8577e93b3db80d2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e405dd8b696c7e91c8577e93b3db80d2"} gateway-1 | {"time_local":"24/Sep/2024:10:30:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a? 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":"e405dd8b696c7e91c8577e93b3db80d2"} device-1 | {"level":"info","message":"GET /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a? 200 17ms","method":"GET","requestID":"e405dd8b696c7e91c8577e93b3db80d2","responseTime":17,"status":200,"url":"/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs","level":"info","message":"auth send jwt","requestID":"b2b58809d57e76e93f554dbbfab85013"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"b2b58809d57e76e93f554dbbfab85013","responseTime":28,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b2b58809d57e76e93f554dbbfab85013"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.410648,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b2b58809d57e76e93f554dbbfab85013","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b2b58809d57e76e93f554dbbfab85013","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Attempting to run experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Attempting to book experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Successfully booked experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"010700e0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01074f00-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940787,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"010700e0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"010700e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.956885,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"01074f00-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"01074f00-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.506174616Z"}]},"request_id":"04cc0566-d4b3-48ae-b7cb-4eb271666349","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.4929543} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"010700e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":10,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.648502118Z"}]},"request_id":"6f9ac7b6-c601-43f9-b509-d622f02b6af8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.5043712} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"010700e0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/a19ff035-614e-4356-9971-48dbf441afac? 200 64ms","method":"GET","requestID":"010700e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":64,"status":200,"url":"/devices/a19ff035-614e-4356-9971-48dbf441afac?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"01074f00-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01074f00-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Setting up experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} device-1 | {"level":"info","message":"GET /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a? 200 101ms","method":"GET","requestID":"01074f00-7a60-11ef-8bac-49f2f0d74a99","responseTime":101,"status":200,"url":"/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Successfully set up experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"012b03a0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"012b9fe0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.954016,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"012b03a0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"012b03a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.879279,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"012b9fe0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"012b9fe0-7a60-11ef-8bac-49f2f0d74a99","responseTime":32,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.506174616Z"}]},"request_id":"4ccdcc59-996f-496d-ab80-152294565f6f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.7287908} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"013319f0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.648502118Z"}]},"request_id":"29e40a2f-49dd-4381-a444-35b376df0a89","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.7313545} authorization-1 | {"level":"info","message":"POST /relations/query 200 15ms","method":"POST","requestID":"012b03a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Successfully running experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} authorization-1 | {"level":"info","message":"POST /relations/query 200 16ms","method":"POST","requestID":"012b9fe0-7a60-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3cb96df-91bc-4241-83c7-770525b69066","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.791205} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.371433,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"013319f0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 50ms","method":"POST","requestID":"013319f0-7a60-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"012b03a0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/a19ff035-614e-4356-9971-48dbf441afac? 200 115ms","method":"GET","requestID":"012b03a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":115,"status":200,"url":"/devices/a19ff035-614e-4356-9971-48dbf441afac?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"012b9fe0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a? 200 119ms","method":"GET","requestID":"012b9fe0-7a60-11ef-8bac-49f2f0d74a99","responseTime":119,"status":200,"url":"/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"013319f0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/a19ff035-614e-4356-9971-48dbf441afac/signaling 200 73ms","method":"POST","requestID":"013319f0-7a60-11ef-8bac-49f2f0d74a99","responseTime":73,"status":200,"url":"/devices/a19ff035-614e-4356-9971-48dbf441afac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"013e6490-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe05c714f-ed0a-421a-b052-1ba444739f16#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe05c714f-ed0a-421a-b052-1ba444739f16","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"4d9c107a-2c01-4c36-b32e-5148dcfb67c4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.8107722} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8eac9041-9112-443d-9990-c2bff27810cc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.8121772} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0143e2d0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/update 200 101ms","method":"POST","requestID":"b2b58809d57e76e93f554dbbfab85013","responseTime":101,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5cee5d4a-f82a-4773-80ac-85c4cfc5b7dd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.81862} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.020567,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"013e6490-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"013e6490-7a60-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c74f064-290b-445e-93cc-e0b116b0f600","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.8582716} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.238291,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0143e2d0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","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/e05c714f-ed0a-421a-b052-1ba444739f16","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b2b58809d57e76e93f554dbbfab85013"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"013e6490-7a60-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:30:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.530","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b2b58809d57e76e93f554dbbfab85013"} experiment-1 | {"level":"info","message":"POST /experiments? 201 499ms","method":"POST","requestID":"b2b58809d57e76e93f554dbbfab85013","responseTime":499,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/a19ff035-614e-4356-9971-48dbf441afac/signaling 200 56ms","method":"POST","requestID":"013e6490-7a60-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/devices/a19ff035-614e-4356-9971-48dbf441afac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0143e2d0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/signaling 200 26ms","method":"POST","requestID":"0143e2d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":26,"status":200,"url":"/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0143e2d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01480180-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs","level":"info","message":"auth send jwt","requestID":"2e0518daefa2a616de84a1ee70352630"} authentication-1 | {"level":"info","message":"GET /auth 200 34ms","method":"GET","requestID":"2e0518daefa2a616de84a1ee70352630","responseTime":34,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2e0518daefa2a616de84a1ee70352630"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fbe21709-dd4f-479c-989d-6476d1600b7a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.8780117} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":31.688088,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"01480180-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 42ms","method":"POST","requestID":"01480180-7a60-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01480180-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.930442,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2e0518daefa2a616de84a1ee70352630","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2e0518daefa2a616de84a1ee70352630","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Building connection plan","requestID":"b2b58809d57e76e93f554dbbfab85013"} 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":"7eec1524-f05c-4729-aaf6-40aa925bd64a"},{"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":"525499a9-0d57-4e24-92bd-96bf5288d986"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"3cb23c3b-1b5d-463a-a33f-d5734f893f81"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b2b58809d57e76e93f554dbbfab85013"} 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/a19ff035-614e-4356-9971-48dbf441afac"},{"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/f3fcc344-aae8-43ac-9138-5687c4beb17a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b2b58809d57e76e93f554dbbfab85013"} device-1 | {"level":"info","message":"POST /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/signaling 200 55ms","method":"POST","requestID":"01480180-7a60-11ef-8bac-49f2f0d74a99","responseTime":55,"status":200,"url":"/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"01512940-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.506174616Z"}]},"request_id":"cc8828f3-d9ca-42e2-9e3a-7c5dafecfe44","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173822.9343233} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"2e0518daefa2a616de84a1ee70352630","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2e0518daefa2a616de84a1ee70352630"} device-1 | {"level":"info","message":"GET /devices/a19ff035-614e-4356-9971-48dbf441afac? 200 60ms","method":"GET","requestID":"2e0518daefa2a616de84a1ee70352630","responseTime":60,"status":200,"url":"/devices/a19ff035-614e-4356-9971-48dbf441afac?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a19ff035-614e-4356-9971-48dbf441afac? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.096","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e0518daefa2a616de84a1ee70352630"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.939116,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"01512940-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 42ms","method":"POST","requestID":"01512940-7a60-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs","level":"info","message":"auth send jwt","requestID":"95eff1f29c53935e887adae38721cc88"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"95eff1f29c53935e887adae38721cc88","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"95eff1f29c53935e887adae38721cc88"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:23Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.841911,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"95eff1f29c53935e887adae38721cc88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173822,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyMn0.TRbGN3ZAm3U3-eLNOn_oFf4NEzrZ_JOVQVUE_CyWFWs"} authorization-1 | {"level":"info","message":"POST /authorize 200 20ms","method":"POST","requestID":"95eff1f29c53935e887adae38721cc88","responseTime":20,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"e78669be-2cad-415a-a0f7-66310d8313d0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173823.117319} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c1b2154-e17e-4f63-a126-d978d99fb2af","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173823.1185431} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:20.648502118Z"}]},"request_id":"c3f8366d-6998-43cc-a4ab-557f33ae285e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173823.1462357} authorization-1 | {"level":"info","message":"POST /relations/update 200 50ms","method":"POST","requestID":"01512940-7a60-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"95eff1f29c53935e887adae38721cc88","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"95eff1f29c53935e887adae38721cc88"} gateway-1 | {"time_local":"24/Sep/2024:10:30:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.191","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95eff1f29c53935e887adae38721cc88"} device-1 | {"level":"info","message":"GET /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a? 200 184ms","method":"GET","requestID":"95eff1f29c53935e887adae38721cc88","responseTime":184,"status":200,"url":"/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"01512940-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"01512940-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4'","requestID":"01512940-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4'","requestID":"01512940-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"01512940-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 284ms","method":"POST","requestID":"01512940-7a60-11ef-8bac-49f2f0d74a99","responseTime":284,"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":"01512940-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b2b58809d57e76e93f554dbbfab85013"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"018d9600-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:23Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.437379,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:23Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2cafeed0-773b-4509-bb28-f4ae55dc62dc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173823.3344474} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"018d9600-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","object_type":"device","rebac_allow":false,"scope_allow":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":"018d9600-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"018d9600-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/a19ff035-614e-4356-9971-48dbf441afac/signaling 200 12ms","method":"POST","requestID":"018d9600-7a60-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/devices/a19ff035-614e-4356-9971-48dbf441afac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01900700-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:23Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.16127,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:23Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01900700-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/signaling 200 12ms","method":"POST","requestID":"01900700-7a60-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/signaling"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e757fc49-761d-419b-a018-fb88cb0ca476","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173823.3494296} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"01900700-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","object_type":"device","rebac_allow":false,"scope_allow":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":"01900700-7a60-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"f3fcc344-aae8-43ac-9138-5687c4beb17a","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":"7bd7c32f-d8dd-452a-bce3-9372933b34b4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a19ff035-614e-4356-9971-48dbf441afac","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":"7bd7c32f-d8dd-452a-bce3-9372933b34b4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a19ff035-614e-4356-9971-48dbf441afac","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":"a19ff035-614e-4356-9971-48dbf441afac","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":"a19ff035-614e-4356-9971-48dbf441afac","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":"a19ff035-614e-4356-9971-48dbf441afac","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/7bd7c32f-d8dd-452a-bce3-9372933b34b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7bd7c32f-d8dd-452a-bce3-9372933b34b4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"999904fa2bf2ee4053c24e1549d6492a","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 26ms","method":"GET","requestID":"999904fa2bf2ee4053c24e1549d6492a","responseTime":26,"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/a19ff035-614e-4356-9971-48dbf441afac"},{"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/f3fcc344-aae8-43ac-9138-5687c4beb17a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4"}}},"level":"info","message":"received a callback","requestID":"999904fa2bf2ee4053c24e1549d6492a"} device-1 | {"device":"f3fcc344-aae8-43ac-9138-5687c4beb17a","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":"f3fcc344-aae8-43ac-9138-5687c4beb17a","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":"f3fcc344-aae8-43ac-9138-5687c4beb17a","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 11ms","method":"POST","requestID":"999904fa2bf2ee4053c24e1549d6492a","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"999904fa2bf2ee4053c24e1549d6492a"} device-1 | {"device":"a19ff035-614e-4356-9971-48dbf441afac","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":"f3fcc344-aae8-43ac-9138-5687c4beb17a","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":"f3fcc344-aae8-43ac-9138-5687c4beb17a","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":"7bd7c32f-d8dd-452a-bce3-9372933b34b4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a19ff035-614e-4356-9971-48dbf441afac","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":"7bd7c32f-d8dd-452a-bce3-9372933b34b4","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNX0.0KoBKf2fytuZ5pDpyhczSJ6Za6VFrJYgQh1Cml89Nxs","level":"info","message":"auth send jwt","requestID":"155b11dea34a9bd18a90c6300d612832"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"155b11dea34a9bd18a90c6300d612832","responseTime":29,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e05c714f-ed0a-421a-b052-1ba444739f16","requestID":"155b11dea34a9bd18a90c6300d612832"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:25Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.941851,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"155b11dea34a9bd18a90c6300d612832","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173825,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNX0.0KoBKf2fytuZ5pDpyhczSJ6Za6VFrJYgQh1Cml89Nxs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"155b11dea34a9bd18a90c6300d612832","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e05c714f-ed0a-421a-b052-1ba444739f16","requestID":"155b11dea34a9bd18a90c6300d612832"} gateway-1 | {"time_local":"24/Sep/2024:10:30:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e05c714f-ed0a-421a-b052-1ba444739f16 HTTP/1.1","status": "200","body_bytes_sent":"1366","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"155b11dea34a9bd18a90c6300d612832"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7bd7c32f-d8dd-452a-bce3-9372933b34b4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"GET /experiments/e05c714f-ed0a-421a-b052-1ba444739f16 200 18ms","method":"GET","requestID":"155b11dea34a9bd18a90c6300d612832","responseTime":18,"status":200,"url":"/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"51261c580da7a11d5f69487a0f83b93c","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":"connected","url":"http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac"},{"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/f3fcc344-aae8-43ac-9138-5687c4beb17a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4"}}},"level":"info","message":"received a callback","requestID":"51261c580da7a11d5f69487a0f83b93c"} authentication-1 | {"level":"info","message":"GET /auth 200 26ms","method":"GET","requestID":"51261c580da7a11d5f69487a0f83b93c","responseTime":26,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0306c880-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:25Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7bd7c32f-d8dd-452a-bce3-9372933b34b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a86015c1-a295-4474-bd6e-cd4eadea9e7e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173825.805586} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.317883,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0306c880-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4","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 30ms","method":"POST","requestID":"0306c880-7a60-11ef-8bac-49f2f0d74a99","responseTime":30,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNX0.0KoBKf2fytuZ5pDpyhczSJ6Za6VFrJYgQh1Cml89Nxs","level":"info","message":"auth send jwt","requestID":"f80a7040eb6ca2cedac8fde4c7dcd6f3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f80a7040eb6ca2cedac8fde4c7dcd6f3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e05c714f-ed0a-421a-b052-1ba444739f16","requestID":"f80a7040eb6ca2cedac8fde4c7dcd6f3"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0306c880-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4 200 39ms","method":"GET","requestID":"0306c880-7a60-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:25Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.95201,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f80a7040eb6ca2cedac8fde4c7dcd6f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173825,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNX0.0KoBKf2fytuZ5pDpyhczSJ6Za6VFrJYgQh1Cml89Nxs"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f80a7040eb6ca2cedac8fde4c7dcd6f3","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e05c714f-ed0a-421a-b052-1ba444739f16","requestID":"f80a7040eb6ca2cedac8fde4c7dcd6f3"} experiment-1 | {"level":"info","message":"GET /experiments/e05c714f-ed0a-421a-b052-1ba444739f16 200 64ms","method":"GET","requestID":"f80a7040eb6ca2cedac8fde4c7dcd6f3","responseTime":64,"status":200,"url":"/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"} gateway-1 | {"time_local":"24/Sep/2024:10:30:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e05c714f-ed0a-421a-b052-1ba444739f16 HTTP/1.1","status": "200","body_bytes_sent":"1366","request_time":"0.095","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f80a7040eb6ca2cedac8fde4c7dcd6f3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 244ms","method":"POST","requestID":"51261c580da7a11d5f69487a0f83b93c","responseTime":244,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.273","http_referrer":"","http_user_agent":"node-fetch","requestID":"51261c580da7a11d5f69487a0f83b93c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03232a20-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:25Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.206637,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:25Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"163353ca-5c1c-4532-9e2c-5fd5d5f25c99","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173825.99231} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"03232a20-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","object_type":"device","rebac_allow":false,"scope_allow":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":"03232a20-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03232a20-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/a19ff035-614e-4356-9971-48dbf441afac/signaling 200 38ms","method":"POST","requestID":"03232a20-7a60-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/devices/a19ff035-614e-4356-9971-48dbf441afac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0329e0e0-7a60-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNn0.fCvH_srqMZ1UptObq5rr2eldMCGO2_j806TavLPEXUY","level":"info","message":"auth send jwt","requestID":"cabf1c6460dc79d4a747c4de0d476c98"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cabf1c6460dc79d4a747c4de0d476c98","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.97641,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"29378734-3878-4c2b-9739-eb530f3a647f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.0371504} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0329e0e0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","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":"Handling GET request on endpoint /experiments/e05c714f-ed0a-421a-b052-1ba444739f16","requestID":"cabf1c6460dc79d4a747c4de0d476c98"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"0329e0e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0329e0e0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/signaling 200 47ms","method":"POST","requestID":"0329e0e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/signaling"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":3.6829,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"cabf1c6460dc79d4a747c4de0d476c98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173826,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNn0.fCvH_srqMZ1UptObq5rr2eldMCGO2_j806TavLPEXUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 50ms","method":"POST","requestID":"cabf1c6460dc79d4a747c4de0d476c98","responseTime":50,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e05c714f-ed0a-421a-b052-1ba444739f16","requestID":"cabf1c6460dc79d4a747c4de0d476c98"} experiment-1 | {"level":"info","message":"GET /experiments/e05c714f-ed0a-421a-b052-1ba444739f16 200 58ms","method":"GET","requestID":"cabf1c6460dc79d4a747c4de0d476c98","responseTime":58,"status":200,"url":"/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"} gateway-1 | {"time_local":"24/Sep/2024:10:30:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e05c714f-ed0a-421a-b052-1ba444739f16 HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.101","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cabf1c6460dc79d4a747c4de0d476c98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNn0.fCvH_srqMZ1UptObq5rr2eldMCGO2_j806TavLPEXUY","level":"info","message":"auth send jwt","requestID":"954c23c9a4b4dcaff228665d8479a907"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"954c23c9a4b4dcaff228665d8479a907","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e05c714f-ed0a-421a-b052-1ba444739f16","requestID":"954c23c9a4b4dcaff228665d8479a907"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.046241,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"954c23c9a4b4dcaff228665d8479a907","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173826,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNn0.fCvH_srqMZ1UptObq5rr2eldMCGO2_j806TavLPEXUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"954c23c9a4b4dcaff228665d8479a907","responseTime":29,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Attempting to finish experiment","requestID":"954c23c9a4b4dcaff228665d8479a907"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"03407620-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.022732,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"03407620-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173826,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNn0.fCvH_srqMZ1UptObq5rr2eldMCGO2_j806TavLPEXUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"03407620-7a60-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"a19ff035-614e-4356-9971-48dbf441afac","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":"a19ff035-614e-4356-9971-48dbf441afac","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":"a19ff035-614e-4356-9971-48dbf441afac","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":"f3fcc344-aae8-43ac-9138-5687c4beb17a","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":"f3fcc344-aae8-43ac-9138-5687c4beb17a","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":"f3fcc344-aae8-43ac-9138-5687c4beb17a","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"}} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7bd7c32f-d8dd-452a-bce3-9372933b34b4': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7bd7c32f-d8dd-452a-bce3-9372933b34b4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"a67bb6b8-4d6d-46e0-a69a-b82eea246345","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.2454228} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ea7484ec-cd92-4057-ba33-d7c77a4ef807","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.2466066} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7bd7c32f-d8dd-452a-bce3-9372933b34b4","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /relations/update 200 37ms","method":"POST","requestID":"03407620-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7494740fa1dba08e0151b304afc1908f","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":"7494740fa1dba08e0151b304afc1908f","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d5272a0795d567e0e6ed61d9cb169874","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 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"03407620-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4 204 78ms","method":"DELETE","requestID":"03407620-7a60-11ef-8bac-49f2f0d74a99","responseTime":78,"status":204,"url":"/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d5272a0795d567e0e6ed61d9cb169874","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":"closed","url":"http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac"},{"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/f3fcc344-aae8-43ac-9138-5687c4beb17a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4"}}},"level":"info","message":"received a callback","requestID":"7494740fa1dba08e0151b304afc1908f"} 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/a19ff035-614e-4356-9971-48dbf441afac"},{"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/f3fcc344-aae8-43ac-9138-5687c4beb17a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7bd7c32f-d8dd-452a-bce3-9372933b34b4"}}},"level":"info","message":"received a callback","requestID":"d5272a0795d567e0e6ed61d9cb169874"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"},"level":"info","message":"Successfully finished experiment","requestID":"954c23c9a4b4dcaff228665d8479a907"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"035c1470-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.512341,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa19ff035-614e-4356-9971-48dbf441afac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b1483045-bcd7-4d5c-bdc5-0de69d21c739","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.366358} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"035c1470-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 40ms","method":"POST","requestID":"035c1470-7a60-11ef-8bac-49f2f0d74a99","responseTime":40,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"def54f66-7c6a-4de0-812f-4644ea6b822a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.3698726} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe05c714f-ed0a-421a-b052-1ba444739f16': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe05c714f-ed0a-421a-b052-1ba444739f16","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"ca9e0185-fbd3-4542-a385-661192da50a7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.3713934} authorization-1 | {"level":"info","message":"POST /relations/update 200 81ms","method":"POST","requestID":"954c23c9a4b4dcaff228665d8479a907","responseTime":81,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"035c1470-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/a19ff035-614e-4356-9971-48dbf441afac/signaling 200 45ms","method":"POST","requestID":"035c1470-7a60-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/devices/a19ff035-614e-4356-9971-48dbf441afac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03638e80-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3fcc344-aae8-43ac-9138-5687c4beb17a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"45b61d46-54ad-42ea-89b2-37e990c05c7d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.4138925} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.347141,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"03638e80-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a","object_type":"device","rebac_allow":false,"scope_allow":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":"03638e80-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03638e80-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/signaling 200 18ms","method":"POST","requestID":"03638e80-7a60-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e05c714f-ed0a-421a-b052-1ba444739f16","requestID":"954c23c9a4b4dcaff228665d8479a907"} experiment-1 | {"level":"info","message":"DELETE /experiments/e05c714f-ed0a-421a-b052-1ba444739f16 204 445ms","method":"DELETE","requestID":"954c23c9a4b4dcaff228665d8479a907","responseTime":445,"status":204,"url":"/experiments/e05c714f-ed0a-421a-b052-1ba444739f16"} gateway-1 | {"time_local":"24/Sep/2024:10:30:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"4.372","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b00a35851ed1c669157084fc885e2b05"} gateway-1 | {"time_local":"24/Sep/2024:10:30:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"4.500","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"602d1320b75852a95c8b1817360f186b"} gateway-1 | {"time_local":"24/Sep/2024:10:30:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e05c714f-ed0a-421a-b052-1ba444739f16 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.448","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"954c23c9a4b4dcaff228665d8479a907"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNn0.fCvH_srqMZ1UptObq5rr2eldMCGO2_j806TavLPEXUY","level":"info","message":"auth send jwt","requestID":"977ccda8b06ffb09e2f4562c39a9b772"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"977ccda8b06ffb09e2f4562c39a9b772","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 366ms","method":"POST","requestID":"7494740fa1dba08e0151b304afc1908f","responseTime":366,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 357ms","method":"POST","requestID":"d5272a0795d567e0e6ed61d9cb169874","responseTime":357,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.375","http_referrer":"","http_user_agent":"node-fetch","requestID":"7494740fa1dba08e0151b304afc1908f"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.374","http_referrer":"","http_user_agent":"node-fetch","requestID":"d5272a0795d567e0e6ed61d9cb169874"} device-1 | {"level":"info","message":"postDevices called","requestID":"977ccda8b06ffb09e2f4562c39a9b772"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.032058,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"977ccda8b06ffb09e2f4562c39a9b772","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173826,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNn0.fCvH_srqMZ1UptObq5rr2eldMCGO2_j806TavLPEXUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"977ccda8b06ffb09e2f4562c39a9b772","responseTime":18,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f3fcc344-aae8-43ac-9138-5687c4beb17a' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6f453c34-7dfc-477b-b883-413f35607f5c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.7289982} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"977ccda8b06ffb09e2f4562c39a9b772","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14fc11fb-b27b-483f-9c61-fb298c4be11f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.7658396} authorization-1 | {"level":"info","message":"POST /relations/update 200 37ms","method":"POST","requestID":"977ccda8b06ffb09e2f4562c39a9b772","responseTime":37,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a19ff035-614e-4356-9971-48dbf441afac' closed"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"5ab947cd-fd6f-47d2-b871-8cc8bb77d0e6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.822603} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"55f9dff2-b9d6-42ce-84aa-b49f87769a83","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.8238356} authorization-1 | {"level":"info","message":"POST /relations/update 200 54ms","method":"POST","requestID":"977ccda8b06ffb09e2f4562c39a9b772","responseTime":54,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:26.822571815Z"}]},"request_id":"55becdd2-97d1-4a16-9ddd-e1b16efa682e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.831109} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"977ccda8b06ffb09e2f4562c39a9b772"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"977ccda8b06ffb09e2f4562c39a9b772","responseTime":6,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.230","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"977ccda8b06ffb09e2f4562c39a9b772"} device-1 | {"level":"info","message":"POST /devices? 201 203ms","method":"POST","requestID":"977ccda8b06ffb09e2f4562c39a9b772","responseTime":203,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNn0.fCvH_srqMZ1UptObq5rr2eldMCGO2_j806TavLPEXUY","level":"info","message":"auth send jwt","requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90"} authentication-1 | {"level":"info","message":"GET /auth 200 15ms","method":"GET","requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90","responseTime":15,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.972366,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173826,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyNn0.fCvH_srqMZ1UptObq5rr2eldMCGO2_j806TavLPEXUY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"90098145-7a74-4f72-a0cc-7a802ed2e182","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.9913163} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72301153-2f96-46f5-b68e-ddd23812c23a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173826.998421} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"6d3fbddb-7aeb-4e4a-80a7-c83543c3d87c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173827.03749} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f4271e75-cda4-4a7f-9116-21e82c05eca9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173827.0381465} authorization-1 | {"level":"info","message":"POST /relations/update 200 51ms","method":"POST","requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90","responseTime":51,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:27.037450719Z"}]},"request_id":"c11e8ffe-dbd1-40ce-80ad-c1c52466abc2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173827.07652} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90","responseTime":28,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90"} device-1 | {"level":"info","message":"POST /devices? 201 192ms","method":"POST","requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90","responseTime":192,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.214","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0345fdbe1f8e446eb3c6cfdbc92d7a90"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI","level":"info","message":"auth send jwt","requestID":"b140e49f08493aee8cd69080d93d1356"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b140e49f08493aee8cd69080d93d1356","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:28Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b140e49f08493aee8cd69080d93d1356"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918817,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b140e49f08493aee8cd69080d93d1356","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b140e49f08493aee8cd69080d93d1356","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:27.037450719Z"}]},"request_id":"3eecb286-d61a-4634-848b-2003c2f28d3e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173828.3864758} authorization-1 | {"level":"info","message":"POST /relations/query 200 13ms","method":"POST","requestID":"b140e49f08493aee8cd69080d93d1356","responseTime":13,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2933e7b8-6d29-42a8-9b7c-d4a53a6d7bb1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173828.4008708} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"b140e49f08493aee8cd69080d93d1356","responseTime":30,"status":200,"url":"/relations/update"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI","level":"info","message":"auth send jwt","requestID":"14603c67a158d6e9137c84bd303958c2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"14603c67a158d6e9137c84bd303958c2","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:27.037450719Z"}]},"request_id":"684bdaba-a40e-4523-b473-5ad366348924","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173828.4433236} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"14603c67a158d6e9137c84bd303958c2"} gateway-1 | {"time_local":"24/Sep/2024:10:30:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c973a1b3-212d-421c-add1-eb61002905b0 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.083","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b140e49f08493aee8cd69080d93d1356"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"b140e49f08493aee8cd69080d93d1356","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b140e49f08493aee8cd69080d93d1356"} device-1 | {"level":"info","message":"PATCH /devices/c973a1b3-212d-421c-add1-eb61002905b0 200 79ms","method":"PATCH","requestID":"b140e49f08493aee8cd69080d93d1356","responseTime":79,"status":200,"url":"/devices/c973a1b3-212d-421c-add1-eb61002905b0"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":29.139922,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"14603c67a158d6e9137c84bd303958c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"14603c67a158d6e9137c84bd303958c2","responseTime":33,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:26.822571815Z"}]},"request_id":"80ea1243-512d-43bd-ab63-8f336a931d65","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173828.4908457} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"14603c67a158d6e9137c84bd303958c2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b3e9d1d5dd6440b4f1d8a6895c657a69"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI","level":"info","message":"auth send jwt","requestID":"b3e9d1d5dd6440b4f1d8a6895c657a69"} authentication-1 | {"level":"info","message":"GET /auth 200 38ms","method":"GET","requestID":"b3e9d1d5dd6440b4f1d8a6895c657a69","responseTime":38,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bbbe1afb-c606-4c42-9333-8ac1ca2faab5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173828.4988182} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"14603c67a158d6e9137c84bd303958c2","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891324,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b3e9d1d5dd6440b4f1d8a6895c657a69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b3e9d1d5dd6440b4f1d8a6895c657a69","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:26.822571815Z"}]},"request_id":"91ddd2bc-a600-4e8d-8671-376a596b09b6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173828.5470815} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"14603c67a158d6e9137c84bd303958c2","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"14603c67a158d6e9137c84bd303958c2"} device-1 | {"level":"info","message":"PATCH /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57 200 157ms","method":"PATCH","requestID":"14603c67a158d6e9137c84bd303958c2","responseTime":157,"status":200,"url":"/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57"} gateway-1 | {"time_local":"24/Sep/2024:10:30:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.166","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"14603c67a158d6e9137c84bd303958c2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI","level":"info","message":"auth send jwt","requestID":"7da35c1ac72c9341fae62d5829e0d9ca"} authentication-1 | {"level":"info","message":"GET /auth 200 31ms","method":"GET","requestID":"7da35c1ac72c9341fae62d5829e0d9ca","responseTime":31,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7da35c1ac72c9341fae62d5829e0d9ca"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.906893,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"7da35c1ac72c9341fae62d5829e0d9ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"7da35c1ac72c9341fae62d5829e0d9ca","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b3e9d1d5dd6440b4f1d8a6895c657a69"} device-1 | {"level":"info","message":"POST /devices/c973a1b3-212d-421c-add1-eb61002905b0/websocket 200 211ms","method":"POST","requestID":"b3e9d1d5dd6440b4f1d8a6895c657a69","responseTime":211,"status":200,"url":"/devices/c973a1b3-212d-421c-add1-eb61002905b0/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:30:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c973a1b3-212d-421c-add1-eb61002905b0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.253","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b3e9d1d5dd6440b4f1d8a6895c657a69"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7da35c1ac72c9341fae62d5829e0d9ca"} device-1 | {"level":"info","message":"POST /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/websocket 200 106ms","method":"POST","requestID":"7da35c1ac72c9341fae62d5829e0d9ca","responseTime":106,"status":200,"url":"/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:30:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.144","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7da35c1ac72c9341fae62d5829e0d9ca"} device-1 | {"level":"info","message":"device 'http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI","level":"info","message":"auth send jwt","requestID":"43cf242cc2e8fa8cfab239660a026326"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"43cf242cc2e8fa8cfab239660a026326","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"43cf242cc2e8fa8cfab239660a026326"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.943832,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"43cf242cc2e8fa8cfab239660a026326","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"43cf242cc2e8fa8cfab239660a026326","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:26.822571815Z"}]},"request_id":"71122c26-4f06-4c27-b22d-2020c256ef09","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173828.809931} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"43cf242cc2e8fa8cfab239660a026326","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"43cf242cc2e8fa8cfab239660a026326"} device-1 | {"level":"info","message":"GET /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57? 200 48ms","method":"GET","requestID":"43cf242cc2e8fa8cfab239660a026326","responseTime":48,"status":200,"url":"/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"43cf242cc2e8fa8cfab239660a026326"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI","level":"info","message":"auth send jwt","requestID":"131f11deda3117a900bea4260a3b2cff"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"131f11deda3117a900bea4260a3b2cff","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"131f11deda3117a900bea4260a3b2cff"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.952011,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"131f11deda3117a900bea4260a3b2cff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"131f11deda3117a900bea4260a3b2cff","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:27.037450719Z"}]},"request_id":"0deec133-c3ad-4ce9-89e3-76f2c754b3e3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173828.8659441} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"131f11deda3117a900bea4260a3b2cff","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"131f11deda3117a900bea4260a3b2cff"} gateway-1 | {"time_local":"24/Sep/2024:10:30:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c973a1b3-212d-421c-add1-eb61002905b0? 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":"131f11deda3117a900bea4260a3b2cff"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI","level":"info","message":"auth send jwt","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} device-1 | {"level":"info","message":"GET /devices/c973a1b3-212d-421c-add1-eb61002905b0? 200 48ms","method":"GET","requestID":"131f11deda3117a900bea4260a3b2cff","responseTime":48,"status":200,"url":"/devices/c973a1b3-212d-421c-add1-eb61002905b0?"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb","responseTime":29,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.875044,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b0121e69bdfb2e34cf3a90e5a893fffb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} authorization-1 | {"level":"info","message":"POST /authorize 200 39ms","method":"POST","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb","responseTime":39,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Attempting to run experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Attempting to book experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Successfully booked experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04f6ffc0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.387154,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"04f6ffc0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04f9bee0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"04f6ffc0-7a60-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.01954,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"04f9bee0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"04f9bee0-7a60-11ef-8bac-49f2f0d74a99","responseTime":32,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:26.822571815Z"}]},"request_id":"77f5c920-b2c5-4232-867f-bae790ffeda8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.1041346} authorization-1 | {"level":"info","message":"POST /relations/query 200 32ms","method":"POST","requestID":"04f6ffc0-7a60-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04f6ffc0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57? 200 66ms","method":"GET","requestID":"04f6ffc0-7a60-11ef-8bac-49f2f0d74a99","responseTime":66,"status":200,"url":"/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:27.037450719Z"}]},"request_id":"bfa2c851-ef04-4334-880d-aa8117201027","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.112295} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04f9bee0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/c973a1b3-212d-421c-add1-eb61002905b0? 200 53ms","method":"GET","requestID":"04f9bee0-7a60-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/devices/c973a1b3-212d-421c-add1-eb61002905b0?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 13ms","method":"POST","requestID":"04f9bee0-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Setting up experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Successfully set up experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0518dfa0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"05192dc0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05197be0-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Successfully running experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"client_addr":"127.0.0.1:50592","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.956597,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0518dfa0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"0518dfa0-7a60-11ef-8bac-49f2f0d74a99","responseTime":35,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"05192dc0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} authorization-1 | {"level":"info","message":"POST /authorize 200 46ms","method":"POST","requestID":"05192dc0-7a60-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"05197be0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","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":"05197be0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/signaling 200 86ms","method":"POST","requestID":"05197be0-7a60-11ef-8bac-49f2f0d74a99","responseTime":86,"status":200,"url":"/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 80ms","method":"POST","requestID":"05197be0-7a60-11ef-8bac-49f2f0d74a99","responseTime":80,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.104998,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45354","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45354","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.778511,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56c2387f-e42b-4292-a1f3-92fb6eac768a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.324498} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05290c40-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:26.822571815Z"}]},"request_id":"c63e9ef5-3199-4c32-b34d-62d62ecc6713","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.3724601} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:27.037450719Z"}]},"request_id":"4b73b73a-68ee-4903-8abb-34dedf750102","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.3726747} authorization-1 | {"level":"info","message":"POST /relations/query 200 56ms","method":"POST","requestID":"05192dc0-7a60-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 58ms","method":"POST","requestID":"0518dfa0-7a60-11ef-8bac-49f2f0d74a99","responseTime":58,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0126f1a3-388d-453b-b43d-51e6554442f9#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0126f1a3-388d-453b-b43d-51e6554442f9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"c4a4f61e-e358-4d3a-817c-73fd23f368e4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.4285674} authorization-1 | {"client_addr":"127.0.0.1:45354","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16858256-01aa-47c2-abbf-eb0749df229e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.4300737} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"05192dc0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/c973a1b3-212d-421c-add1-eb61002905b0? 200 160ms","method":"GET","requestID":"05192dc0-7a60-11ef-8bac-49f2f0d74a99","responseTime":160,"status":200,"url":"/devices/c973a1b3-212d-421c-add1-eb61002905b0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0518dfa0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57? 200 165ms","method":"GET","requestID":"0518dfa0-7a60-11ef-8bac-49f2f0d74a99","responseTime":165,"status":200,"url":"/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"053679c0-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} gateway-1 | {"time_local":"24/Sep/2024:10:30:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.598","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOX0.v9U9my30rFWMZ5qDk0a8jjscvIvpp19ZW_FJpNwuTDg","level":"info","message":"auth send jwt","requestID":"85d35dd4cb1903224b1acafb830006b9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"85d35dd4cb1903224b1acafb830006b9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"85d35dd4cb1903224b1acafb830006b9"} authorization-1 | {"level":"info","message":"POST /relations/update 200 122ms","method":"POST","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb","responseTime":162,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"POST /experiments? 201 577ms","method":"POST","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb","responseTime":577,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4495f418-ab10-411d-9fef-0e92eb578748","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.434618} authorization-1 | {"client_addr":"127.0.0.1:45354","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.302888,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"05290c40-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 61ms","method":"POST","requestID":"05290c40-7a60-11ef-8bac-49f2f0d74a99","responseTime":61,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e0b960a-cc16-444a-9056-b58cc3b3a784","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.4932394} authorization-1 | {"client_addr":"127.0.0.1:45354","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45354","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.605747,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05290c40-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.972406,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} device-1 | {"level":"info","message":"POST /devices/c973a1b3-212d-421c-add1-eb61002905b0/signaling 200 144ms","method":"POST","requestID":"05290c40-7a60-11ef-8bac-49f2f0d74a99","responseTime":144,"status":200,"url":"/devices/c973a1b3-212d-421c-add1-eb61002905b0/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"053679c0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"053679c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"85d35dd4cb1903224b1acafb830006b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173829,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOX0.v9U9my30rFWMZ5qDk0a8jjscvIvpp19ZW_FJpNwuTDg"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"85d35dd4cb1903224b1acafb830006b9","responseTime":34,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"053679c0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/signaling 200 71ms","method":"POST","requestID":"053679c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":71,"status":200,"url":"/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05417640-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:26.822571815Z"}]},"request_id":"a8779557-aea8-47a2-ad16-1551b6cb95f4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.5419872} authorization-1 | {"level":"info","message":"POST /relations/query 200 40ms","method":"POST","requestID":"85d35dd4cb1903224b1acafb830006b9","responseTime":40,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e27bde2-fd9c-47e2-ad9d-bb6e6ce9cde1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.5792184} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.825967,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"05417640-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","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":"85d35dd4cb1903224b1acafb830006b9"} gateway-1 | {"time_local":"24/Sep/2024:10:30:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.111","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"85d35dd4cb1903224b1acafb830006b9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOX0.v9U9my30rFWMZ5qDk0a8jjscvIvpp19ZW_FJpNwuTDg","level":"info","message":"auth send jwt","requestID":"7758d92a01ec8ee36480dd8379d346c3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7758d92a01ec8ee36480dd8379d346c3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57? 200 114ms","method":"GET","requestID":"85d35dd4cb1903224b1acafb830006b9","responseTime":114,"status":200,"url":"/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7758d92a01ec8ee36480dd8379d346c3"} authorization-1 | {"level":"info","message":"POST /authorize 200 24ms","method":"POST","requestID":"05417640-7a60-11ef-8bac-49f2f0d74a99","responseTime":24,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":25.644572,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"7758d92a01ec8ee36480dd8379d346c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173829,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOX0.v9U9my30rFWMZ5qDk0a8jjscvIvpp19ZW_FJpNwuTDg"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"7758d92a01ec8ee36480dd8379d346c3","responseTime":29,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05417640-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/c973a1b3-212d-421c-add1-eb61002905b0/signaling 200 96ms","method":"POST","requestID":"05417640-7a60-11ef-8bac-49f2f0d74a99","responseTime":96,"status":200,"url":"/devices/c973a1b3-212d-421c-add1-eb61002905b0/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"05504350-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Building connection plan","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} 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":"c96e6be0-c9b1-4444-817c-b9b5e2c66fc8"},{"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":"f2213196-38b6-46fb-9198-3ad3b678ec91"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"bf7e1684-a946-4f8e-9bd5-0bc625b7998e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} 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/db0af805-9a53-4c5d-a745-9afaafcbdf57"},{"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/c973a1b3-212d-421c-add1-eb61002905b0"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:27.037450719Z"}]},"request_id":"9d19a85d-2441-4001-9e17-7c08fc2f823d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.6443787} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.896617,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"7758d92a01ec8ee36480dd8379d346c3","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"05504350-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173828,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgyOH0.zFkrWl1paCwzu1kZ8vW6DJqC8GCZSEjgtk0ybh-d0qI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"05504350-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7758d92a01ec8ee36480dd8379d346c3"} device-1 | {"level":"info","message":"GET /devices/c973a1b3-212d-421c-add1-eb61002905b0? 200 89ms","method":"GET","requestID":"7758d92a01ec8ee36480dd8379d346c3","responseTime":89,"status":200,"url":"/devices/c973a1b3-212d-421c-add1-eb61002905b0?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c973a1b3-212d-421c-add1-eb61002905b0? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.093","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7758d92a01ec8ee36480dd8379d346c3"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"67e639be-58f8-4382-a3f3-ffdf40d037ec","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.6925452} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e4db9b2-11c6-446f-ba11-3ebe53ce624e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.6940901} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"05504350-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"05504350-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"05504350-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d'","requestID":"05504350-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d'","requestID":"05504350-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"05504350-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 146ms","method":"POST","requestID":"05504350-7a60-11ef-8bac-49f2f0d74a99","responseTime":147,"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":"05504350-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b0121e69bdfb2e34cf3a90e5a893fffb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0576de20-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b3ffe551-8a5a-4ac1-a0ef-d74d6c432dd4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.8954208} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.07226,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0576de20-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","object_type":"device","rebac_allow":false,"scope_allow":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":"0576de20-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0576de20-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/signaling 200 19ms","method":"POST","requestID":"0576de20-7a60-11ef-8bac-49f2f0d74a99","responseTime":19,"status":200,"url":"/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"057de300-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.121667,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:29Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10bb047c-bf7a-4565-b5b2-2c21fe332c8c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173829.9416766} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"057de300-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","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":"057de300-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/c973a1b3-212d-421c-add1-eb61002905b0/signaling 200 24ms","method":"POST","requestID":"057de300-7a60-11ef-8bac-49f2f0d74a99","responseTime":24,"status":200,"url":"/devices/c973a1b3-212d-421c-add1-eb61002905b0/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 22ms","method":"POST","requestID":"057de300-7a60-11ef-8bac-49f2f0d74a99","responseTime":22,"status":200,"url":"/authorize"} device-1 | {"device":"c973a1b3-212d-421c-add1-eb61002905b0","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":"445bf626-424b-4b22-80c4-15945428bb2d","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"db0af805-9a53-4c5d-a745-9afaafcbdf57","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":"db0af805-9a53-4c5d-a745-9afaafcbdf57","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":"db0af805-9a53-4c5d-a745-9afaafcbdf57","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":"445bf626-424b-4b22-80c4-15945428bb2d","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"db0af805-9a53-4c5d-a745-9afaafcbdf57","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":"db0af805-9a53-4c5d-a745-9afaafcbdf57","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/445bf626-424b-4b22-80c4-15945428bb2d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"445bf626-424b-4b22-80c4-15945428bb2d","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a1218161ad8fffa686eec55bb62547bc","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":"a1218161ad8fffa686eec55bb62547bc","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/db0af805-9a53-4c5d-a745-9afaafcbdf57"},{"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/c973a1b3-212d-421c-add1-eb61002905b0"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d"}}},"level":"info","message":"received a callback","requestID":"a1218161ad8fffa686eec55bb62547bc"} device-1 | {"device":"db0af805-9a53-4c5d-a745-9afaafcbdf57","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":"c973a1b3-212d-421c-add1-eb61002905b0","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":"c973a1b3-212d-421c-add1-eb61002905b0","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":"c973a1b3-212d-421c-add1-eb61002905b0","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":"c973a1b3-212d-421c-add1-eb61002905b0","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"}} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.064","http_referrer":"","http_user_agent":"node-fetch","requestID":"a1218161ad8fffa686eec55bb62547bc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 46ms","method":"POST","requestID":"a1218161ad8fffa686eec55bb62547bc","responseTime":46,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"db0af805-9a53-4c5d-a745-9afaafcbdf57","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":"c973a1b3-212d-421c-add1-eb61002905b0","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":"445bf626-424b-4b22-80c4-15945428bb2d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"445bf626-424b-4b22-80c4-15945428bb2d","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/445bf626-424b-4b22-80c4-15945428bb2d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"445bf626-424b-4b22-80c4-15945428bb2d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"56ff20de66f6c2ed6a0c2a246c039bc6","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":"56ff20de66f6c2ed6a0c2a246c039bc6","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/db0af805-9a53-4c5d-a745-9afaafcbdf57"},{"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/c973a1b3-212d-421c-add1-eb61002905b0"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d"}}},"level":"info","message":"received a callback","requestID":"56ff20de66f6c2ed6a0c2a246c039bc6"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"06d49960-7a60-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzMn0.O5gDR11C10EtU1DatqmP2NWSGXP14x7YbX-GI_d92zE","level":"info","message":"auth send jwt","requestID":"ae8054d17a42f4544fb332557f437bf7"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:32Z"} authentication-1 | {"level":"info","message":"GET /auth 200 32ms","method":"GET","requestID":"ae8054d17a42f4544fb332557f437bf7","responseTime":32,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F445bf626-424b-4b22-80c4-15945428bb2d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f89c2858-86b6-4ce8-8807-cc846f84b00d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173832.2265527} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.553113,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"06d49960-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d","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 47ms","method":"POST","requestID":"06d49960-7a60-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"06d49960-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/445bf626-424b-4b22-80c4-15945428bb2d 200 53ms","method":"GET","requestID":"06d49960-7a60-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0126f1a3-388d-453b-b43d-51e6554442f9","requestID":"ae8054d17a42f4544fb332557f437bf7"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.919674,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ae8054d17a42f4544fb332557f437bf7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173832,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzMn0.O5gDR11C10EtU1DatqmP2NWSGXP14x7YbX-GI_d92zE"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"ae8054d17a42f4544fb332557f437bf7","responseTime":35,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0126f1a3-388d-453b-b43d-51e6554442f9","requestID":"ae8054d17a42f4544fb332557f437bf7"} gateway-1 | {"time_local":"24/Sep/2024:10:30:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0126f1a3-388d-453b-b43d-51e6554442f9 HTTP/1.1","status": "200","body_bytes_sent":"1366","request_time":"0.096","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae8054d17a42f4544fb332557f437bf7"} experiment-1 | {"level":"info","message":"GET /experiments/0126f1a3-388d-453b-b43d-51e6554442f9 200 51ms","method":"GET","requestID":"ae8054d17a42f4544fb332557f437bf7","responseTime":51,"status":200,"url":"/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 184ms","method":"POST","requestID":"56ff20de66f6c2ed6a0c2a246c039bc6","responseTime":184,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.188","http_referrer":"","http_user_agent":"node-fetch","requestID":"56ff20de66f6c2ed6a0c2a246c039bc6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"06eb7cc0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"926fb849-708e-4213-b957-babe0493b277","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173832.3544514} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":28.374178,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"06eb7cc0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"06eb7cc0-7a60-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"06eb7cc0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/signaling 200 58ms","method":"POST","requestID":"06eb7cc0-7a60-11ef-8bac-49f2f0d74a99","responseTime":58,"status":200,"url":"/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"06f4cb90-7a60-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzMn0.O5gDR11C10EtU1DatqmP2NWSGXP14x7YbX-GI_d92zE","level":"info","message":"auth send jwt","requestID":"d04d169a6782ade88f10dbd11c2851c8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d04d169a6782ade88f10dbd11c2851c8","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0126f1a3-388d-453b-b43d-51e6554442f9","requestID":"d04d169a6782ade88f10dbd11c2851c8"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.338694,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a876d12e-f6c8-4cee-8679-896facbd69d3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173832.3995771} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"06f4cb90-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","object_type":"device","rebac_allow":false,"scope_allow":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":"06f4cb90-7a60-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.89485,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d04d169a6782ade88f10dbd11c2851c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173832,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzMn0.O5gDR11C10EtU1DatqmP2NWSGXP14x7YbX-GI_d92zE"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"d04d169a6782ade88f10dbd11c2851c8","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"06f4cb90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/c973a1b3-212d-421c-add1-eb61002905b0/signaling 200 51ms","method":"POST","requestID":"06f4cb90-7a60-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/devices/c973a1b3-212d-421c-add1-eb61002905b0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0126f1a3-388d-453b-b43d-51e6554442f9","requestID":"d04d169a6782ade88f10dbd11c2851c8"} gateway-1 | {"time_local":"24/Sep/2024:10:30:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0126f1a3-388d-453b-b43d-51e6554442f9 HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d04d169a6782ade88f10dbd11c2851c8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzMn0.O5gDR11C10EtU1DatqmP2NWSGXP14x7YbX-GI_d92zE","level":"info","message":"auth send jwt","requestID":"a701a0a96785d4dc4b7969ca7d682581"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a701a0a96785d4dc4b7969ca7d682581","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"GET /experiments/0126f1a3-388d-453b-b43d-51e6554442f9 200 59ms","method":"GET","requestID":"d04d169a6782ade88f10dbd11c2851c8","responseTime":59,"status":200,"url":"/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0126f1a3-388d-453b-b43d-51e6554442f9","requestID":"a701a0a96785d4dc4b7969ca7d682581"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.962601,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a701a0a96785d4dc4b7969ca7d682581","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173832,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzMn0.O5gDR11C10EtU1DatqmP2NWSGXP14x7YbX-GI_d92zE"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a701a0a96785d4dc4b7969ca7d682581","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Attempting to finish experiment","requestID":"a701a0a96785d4dc4b7969ca7d682581"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0706ccf0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.980551,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0706ccf0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173832,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzMn0.O5gDR11C10EtU1DatqmP2NWSGXP14x7YbX-GI_d92zE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0706ccf0-7a60-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"db0af805-9a53-4c5d-a745-9afaafcbdf57","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":"db0af805-9a53-4c5d-a745-9afaafcbdf57","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":"db0af805-9a53-4c5d-a745-9afaafcbdf57","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":"c973a1b3-212d-421c-add1-eb61002905b0","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":"c973a1b3-212d-421c-add1-eb61002905b0","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":"c973a1b3-212d-421c-add1-eb61002905b0","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/445bf626-424b-4b22-80c4-15945428bb2d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"445bf626-424b-4b22-80c4-15945428bb2d","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"407a57ac24b1d13f0c483f2384e7a254","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":"407a57ac24b1d13f0c483f2384e7a254","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d51fd7fcf284a2cdaf1daeefcf32c4e9","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":"d51fd7fcf284a2cdaf1daeefcf32c4e9","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F445bf626-424b-4b22-80c4-15945428bb2d': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F445bf626-424b-4b22-80c4-15945428bb2d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"90ed09da-27eb-4a57-b241-c149e779d0a7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173832.6091259} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1fe6b75e-2ab8-4066-a072-34103945be40","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173832.6097686} authorization-1 | {"level":"info","message":"POST /relations/update 200 45ms","method":"POST","requestID":"0706ccf0-7a60-11ef-8bac-49f2f0d74a99","responseTime":45,"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/db0af805-9a53-4c5d-a745-9afaafcbdf57"},{"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/c973a1b3-212d-421c-add1-eb61002905b0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d"}}},"level":"info","message":"received a callback","requestID":"407a57ac24b1d13f0c483f2384e7a254"} 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/db0af805-9a53-4c5d-a745-9afaafcbdf57"},{"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/c973a1b3-212d-421c-add1-eb61002905b0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d"}}},"level":"info","message":"received a callback","requestID":"d51fd7fcf284a2cdaf1daeefcf32c4e9"} device-1 | {"data":{"peerconnection":"445bf626-424b-4b22-80c4-15945428bb2d","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0706ccf0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/445bf626-424b-4b22-80c4-15945428bb2d 204 189ms","method":"DELETE","requestID":"0706ccf0-7a60-11ef-8bac-49f2f0d74a99","responseTime":189,"status":204,"url":"/peerconnections/445bf626-424b-4b22-80c4-15945428bb2d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"},"level":"info","message":"Successfully finished experiment","requestID":"a701a0a96785d4dc4b7969ca7d682581"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"072b9300-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb0af805-9a53-4c5d-a745-9afaafcbdf57","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4303ae8c-932f-4c9e-aa04-fb35e6d41079","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173832.75834} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.26383,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"072b9300-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57","object_type":"device","rebac_allow":false,"scope_allow":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":"072b9300-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"072b9300-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/signaling 200 46ms","method":"POST","requestID":"072b9300-7a60-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57/signaling"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0126f1a3-388d-453b-b43d-51e6554442f9': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0126f1a3-388d-453b-b43d-51e6554442f9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"df129384-6230-4e5d-946d-2a94ea851d82","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173832.7990453} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2ca054a-4000-4567-a585-3dccf6fd0560","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173832.8002312} authorization-1 | {"level":"info","message":"POST /relations/update 200 56ms","method":"POST","requestID":"a701a0a96785d4dc4b7969ca7d682581","responseTime":56,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0733f770-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.639576,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:32Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc973a1b3-212d-421c-add1-eb61002905b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cdf0510a-e058-4c16-acca-94dacdc2d735","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173832.8143296} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0733f770-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 39ms","method":"POST","requestID":"0733f770-7a60-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0733f770-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/c973a1b3-212d-421c-add1-eb61002905b0/signaling 200 98ms","method":"POST","requestID":"0733f770-7a60-11ef-8bac-49f2f0d74a99","responseTime":98,"status":200,"url":"/devices/c973a1b3-212d-421c-add1-eb61002905b0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0126f1a3-388d-453b-b43d-51e6554442f9","requestID":"a701a0a96785d4dc4b7969ca7d682581"} experiment-1 | {"level":"info","message":"DELETE /experiments/0126f1a3-388d-453b-b43d-51e6554442f9 204 657ms","method":"DELETE","requestID":"a701a0a96785d4dc4b7969ca7d682581","responseTime":657,"status":204,"url":"/experiments/0126f1a3-388d-453b-b43d-51e6554442f9"} gateway-1 | {"time_local":"24/Sep/2024:10:30:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0126f1a3-388d-453b-b43d-51e6554442f9 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.662","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a701a0a96785d4dc4b7969ca7d682581"} gateway-1 | {"time_local":"24/Sep/2024:10:30:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"4.409","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3ff8697ee6db40d43ca957b31e316b23"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 475ms","method":"POST","requestID":"407a57ac24b1d13f0c483f2384e7a254","responseTime":475,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30:33 +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.549","http_referrer":"","http_user_agent":"node-fetch","requestID":"d51fd7fcf284a2cdaf1daeefcf32c4e9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 478ms","method":"POST","requestID":"d51fd7fcf284a2cdaf1daeefcf32c4e9","responseTime":478,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzM30.UobCbbJArPOcPOfeYdZQixuR_jy-tJeE4tSVwMbUExM","level":"info","message":"auth send jwt","requestID":"45b1457c72de5f5a3f83804b35bb520d"} authentication-1 | {"level":"info","message":"GET /auth 200 44ms","method":"GET","requestID":"45b1457c72de5f5a3f83804b35bb520d","responseTime":44,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"4.358","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"be71149416c490ba6d04aa6b6d2a8b87"} gateway-1 | {"time_local":"24/Sep/2024:10:30:33 +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.552","http_referrer":"","http_user_agent":"node-fetch","requestID":"407a57ac24b1d13f0c483f2384e7a254"} device-1 | {"level":"info","message":"postDevices called","requestID":"45b1457c72de5f5a3f83804b35bb520d"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:33Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.8642,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"45b1457c72de5f5a3f83804b35bb520d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173833,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzM30.UobCbbJArPOcPOfeYdZQixuR_jy-tJeE4tSVwMbUExM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"45b1457c72de5f5a3f83804b35bb520d","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c973a1b3-212d-421c-add1-eb61002905b0' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e318dc6a-2690-4477-b8d8-8abf3e2a458e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173833.2205324} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45b1457c72de5f5a3f83804b35bb520d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/db0af805-9a53-4c5d-a745-9afaafcbdf57' 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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d01c45eb-f90e-4f9a-a9b4-0ff2d00302a3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173833.2375965} authorization-1 | {"level":"info","message":"POST /relations/update 200 35ms","method":"POST","requestID":"45b1457c72de5f5a3f83804b35bb520d","responseTime":35,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"ef5bd924-6ad4-47e6-8c24-eefa7de40374","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173833.3249834} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7826a2c2-63b4-4d35-b4dd-4b758a131af6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173833.3260872} authorization-1 | {"level":"info","message":"POST /relations/update 200 61ms","method":"POST","requestID":"45b1457c72de5f5a3f83804b35bb520d","responseTime":61,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"45b1457c72de5f5a3f83804b35bb520d"} device-1 | {"level":"info","message":"POST /devices? 201 207ms","method":"POST","requestID":"45b1457c72de5f5a3f83804b35bb520d","responseTime":207,"status":201,"url":"/devices?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:33.324952306Z"}]},"request_id":"eb27b7a2-6538-446e-8342-245f3dada3b5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173833.3726509} authorization-1 | {"level":"info","message":"POST /relations/query 200 46ms","method":"POST","requestID":"45b1457c72de5f5a3f83804b35bb520d","responseTime":46,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.257","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"45b1457c72de5f5a3f83804b35bb520d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzM30.UobCbbJArPOcPOfeYdZQixuR_jy-tJeE4tSVwMbUExM","level":"info","message":"auth send jwt","requestID":"c7ba07480023aff6c439b821b02cd8e7"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"c7ba07480023aff6c439b821b02cd8e7","responseTime":11,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c7ba07480023aff6c439b821b02cd8e7"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:33Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":27.14692,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c7ba07480023aff6c439b821b02cd8e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173833,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzM30.UobCbbJArPOcPOfeYdZQixuR_jy-tJeE4tSVwMbUExM"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"c7ba07480023aff6c439b821b02cd8e7","responseTime":38,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"61b6295b-c22a-4aa2-924c-8b863d0416a3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173833.4832046} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c7ba07480023aff6c439b821b02cd8e7","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb6a6779-c657-4e5b-b7c1-dc5a7a76eb0c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173833.4899511} authorization-1 | {"level":"info","message":"POST /relations/update 200 38ms","method":"POST","requestID":"c7ba07480023aff6c439b821b02cd8e7","responseTime":38,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"c10df33a-6cb1-4414-a15d-48dfaa1765e0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173833.5348437} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7425f362-bdae-41da-8e4d-1e9a295a268a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173833.5361474} authorization-1 | {"level":"info","message":"POST /relations/update 200 50ms","method":"POST","requestID":"c7ba07480023aff6c439b821b02cd8e7","responseTime":50,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c7ba07480023aff6c439b821b02cd8e7"} device-1 | {"level":"info","message":"POST /devices? 201 192ms","method":"POST","requestID":"c7ba07480023aff6c439b821b02cd8e7","responseTime":192,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.203","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c7ba07480023aff6c439b821b02cd8e7"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:33.534810486Z"}]},"request_id":"4ac44e64-4a18-4e31-9ad4-45463e63c221","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173833.5761752} authorization-1 | {"level":"info","message":"POST /relations/query 200 36ms","method":"POST","requestID":"c7ba07480023aff6c439b821b02cd8e7","responseTime":36,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"28081b579a6d4ec9ff5b5656c9de4c4e","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)"} gateway-1 | {"time_local":"24/Sep/2024:10:30:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/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":"28081b579a6d4ec9ff5b5656c9de4c4e"} device-1 | {"level":"info","message":"OPTIONS /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/websocket 200 1ms","method":"OPTIONS","requestID":"28081b579a6d4ec9ff5b5656c9de4c4e","responseTime":1,"status":200,"url":"/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/websocket"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"28081b579a6d4ec9ff5b5656c9de4c4e","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzNn0.E2qV2jffj42lEaDN_SbM2iyRA-GkidFkK6GZLUnyNPI","level":"info","message":"auth send jwt","requestID":"d12c0059ebb5ca27ee7fbd581a84da89"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d12c0059ebb5ca27ee7fbd581a84da89","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d12c0059ebb5ca27ee7fbd581a84da89"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:36Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.912395,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:36Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b549fd334d008f17dd3aac2970965b68","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":"b549fd334d008f17dd3aac2970965b68","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d12c0059ebb5ca27ee7fbd581a84da89","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173836,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzNn0.E2qV2jffj42lEaDN_SbM2iyRA-GkidFkK6GZLUnyNPI"} device-1 | {"level":"info","message":"OPTIONS /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/websocket 200 1ms","method":"OPTIONS","requestID":"b549fd334d008f17dd3aac2970965b68","responseTime":1,"status":200,"url":"/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/websocket"} authorization-1 | {"level":"info","message":"POST /authorize 200 20ms","method":"POST","requestID":"d12c0059ebb5ca27ee7fbd581a84da89","responseTime":20,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:30:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.039","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":"b549fd334d008f17dd3aac2970965b68"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw","level":"info","message":"auth send jwt","requestID":"797e7032d977a58efb557aa7926179db"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"797e7032d977a58efb557aa7926179db","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.946534,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:37Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"797e7032d977a58efb557aa7926179db"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"797e7032d977a58efb557aa7926179db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173837,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"797e7032d977a58efb557aa7926179db","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d12c0059ebb5ca27ee7fbd581a84da89"} gateway-1 | {"time_local":"24/Sep/2024:10:30:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.142","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":"d12c0059ebb5ca27ee7fbd581a84da89"} device-1 | {"level":"info","message":"POST /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/websocket 200 134ms","method":"POST","requestID":"d12c0059ebb5ca27ee7fbd581a84da89","responseTime":134,"status":200,"url":"/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:30:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.111","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":"797e7032d977a58efb557aa7926179db"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"797e7032d977a58efb557aa7926179db"} device-1 | {"level":"info","message":"POST /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/websocket 200 104ms","method":"POST","requestID":"797e7032d977a58efb557aa7926179db","responseTime":104,"status":200,"url":"/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw","level":"info","message":"auth send jwt","requestID":"2734c09dfaf6efc1168a9c8cd514e8ef"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2734c09dfaf6efc1168a9c8cd514e8ef","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2734c09dfaf6efc1168a9c8cd514e8ef"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.980509,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2734c09dfaf6efc1168a9c8cd514e8ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173837,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2734c09dfaf6efc1168a9c8cd514e8ef","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:33.324952306Z"}]},"request_id":"cbec9d94-e46b-4109-82cd-e5b1cec4274b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173837.2432764} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"2734c09dfaf6efc1168a9c8cd514e8ef","responseTime":28,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2734c09dfaf6efc1168a9c8cd514e8ef"} device-1 | {"level":"info","message":"GET /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a? 200 54ms","method":"GET","requestID":"2734c09dfaf6efc1168a9c8cd514e8ef","responseTime":54,"status":200,"url":"/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2734c09dfaf6efc1168a9c8cd514e8ef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw","level":"info","message":"auth send jwt","requestID":"b59dc0db0f849494d6ef47dbae22b292"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b59dc0db0f849494d6ef47dbae22b292","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b59dc0db0f849494d6ef47dbae22b292"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.910634,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b59dc0db0f849494d6ef47dbae22b292","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173837,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"b59dc0db0f849494d6ef47dbae22b292","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:33.534810486Z"}]},"request_id":"c241c75c-aa2e-40b3-a3a6-abb7fe7b57f2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173837.3264844} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b59dc0db0f849494d6ef47dbae22b292","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b59dc0db0f849494d6ef47dbae22b292"} device-1 | {"level":"info","message":"GET /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86? 200 53ms","method":"GET","requestID":"b59dc0db0f849494d6ef47dbae22b292","responseTime":53,"status":200,"url":"/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b59dc0db0f849494d6ef47dbae22b292"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw","level":"info","message":"auth send jwt","requestID":"019556374a6f3debde3694fa8e340ea3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"019556374a6f3debde3694fa8e340ea3","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"019556374a6f3debde3694fa8e340ea3"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":25.061286,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"019556374a6f3debde3694fa8e340ea3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173837,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"019556374a6f3debde3694fa8e340ea3","responseTime":29,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Attempting to run experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Attempting to book experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Successfully booked experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"09fd0280-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984028,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"09fd0280-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173837,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"09fd0280-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:33.324952306Z"}]},"request_id":"37380dde-5de1-4fa1-8be0-31e286fef13c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173837.4933405} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"09fd0280-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"09ff9a90-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.901478,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"09ff9a90-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173837,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"09ff9a90-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:33.534810486Z"}]},"request_id":"99a731d5-fe2a-41e0-9c50-519d27c8b8a9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173837.5363355} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"09ff9a90-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"09fd0280-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a? 200 65ms","method":"GET","requestID":"09fd0280-7a60-11ef-8bac-49f2f0d74a99","responseTime":65,"status":200,"url":"/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"09ff9a90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86? 200 52ms","method":"GET","requestID":"09ff9a90-7a60-11ef-8bac-49f2f0d74a99","responseTime":52,"status":200,"url":"/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Setting up experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Successfully locked booking for experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Attempting to update booking for experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Successfully updated booking for experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Successfully set up experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a1f5790-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a1fa5b0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a201ae0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45622","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45622","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.959291,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45352","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.542297,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0a1fa5b0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173837,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0a1fa5b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0a1f5790-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173837,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"0a1f5790-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.670586,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c190647d-3a4c-4184-b4d8-a73e41d28dce","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173837.7509112} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0a201ae0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","object_type":"device","rebac_allow":false,"scope_allow":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":"0a201ae0-7a60-11ef-8bac-49f2f0d74a99","responseTime":15,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:33.324952306Z"}]},"request_id":"b2ee4946-c70d-41cf-8962-0a00ce599e44","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173837.7606971} authorization-1 | {"level":"info","message":"POST /relations/query 200 37ms","method":"POST","requestID":"0a1f5790-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:33.534810486Z"}]},"request_id":"37865a49-5aaa-4067-b046-013f64abe31f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173837.7986927} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0a1fa5b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Successfully running experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a201ae0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/signaling 200 132ms","method":"POST","requestID":"0a201ae0-7a60-11ef-8bac-49f2f0d74a99","responseTime":132,"status":200,"url":"/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a1f5790-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a? 200 148ms","method":"GET","requestID":"0a1f5790-7a60-11ef-8bac-49f2f0d74a99","responseTime":148,"status":200,"url":"/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a1fa5b0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86? 200 148ms","method":"GET","requestID":"0a1fa5b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":148,"status":200,"url":"/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a366200-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.119496,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5fd2bdea-5781-4779-b974-4b197ab238b5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173837.8616233} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0a366200-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","object_type":"device","rebac_allow":false,"scope_allow":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":"0a366200-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a3c5570-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.199688,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c2abe999-3e96-432b-8227-daf43b9b0b87","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173837.9007797} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0a3c5570-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","object_type":"device","rebac_allow":false,"scope_allow":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":"0a3c5570-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F391b8e75-0526-47c6-bc3b-283bb45437b5#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F391b8e75-0526-47c6-bc3b-283bb45437b5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"8d907380-75f3-4225-a40b-503170695d25","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173837.9163792} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"11d00bae-284c-4cab-9a49-f4cf73ec4d21","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173837.917723} authorization-1 | {"level":"info","message":"POST /relations/update 200 134ms","method":"POST","requestID":"019556374a6f3debde3694fa8e340ea3","responseTime":134,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a366200-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/signaling 200 96ms","method":"POST","requestID":"0a366200-7a60-11ef-8bac-49f2f0d74a99","responseTime":96,"status":200,"url":"/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a3c5570-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/signaling 200 67ms","method":"POST","requestID":"0a3c5570-7a60-11ef-8bac-49f2f0d74a99","responseTime":67,"status":200,"url":"/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a4751f0-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"019556374a6f3debde3694fa8e340ea3"} experiment-1 | {"level":"info","message":"POST /experiments? 201 620ms","method":"POST","requestID":"019556374a6f3debde3694fa8e340ea3","responseTime":620,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.629","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"019556374a6f3debde3694fa8e340ea3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw","level":"info","message":"auth send jwt","requestID":"edb6573695ce5ed3c8b21f073dd393eb"} authentication-1 | {"level":"info","message":"GET /auth 200 30ms","method":"GET","requestID":"edb6573695ce5ed3c8b21f073dd393eb","responseTime":30,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:37Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.771947,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9943179f-96fb-4890-8f14-aed2c0ef44d2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173838.000495} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0a4751f0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","object_type":"device","rebac_allow":false,"scope_allow":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":"0a4751f0-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"edb6573695ce5ed3c8b21f073dd393eb"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.88635,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"edb6573695ce5ed3c8b21f073dd393eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173837,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"edb6573695ce5ed3c8b21f073dd393eb","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:33.324952306Z"}]},"request_id":"2ecac590-9d82-4dec-8e5a-5da128e9f1d3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173838.0207171} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"edb6573695ce5ed3c8b21f073dd393eb","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a4751f0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/signaling 200 87ms","method":"POST","requestID":"0a4751f0-7a60-11ef-8bac-49f2f0d74a99","responseTime":87,"status":200,"url":"/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Building connection plan","requestID":"019556374a6f3debde3694fa8e340ea3"} 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":"92aeb965-0b81-4d46-8223-f2ad37659967"},{"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":"e769615a-62f7-4921-8a2c-c262f0cd0728"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"7a018f1f-41fd-4daa-ba4b-fd6e9848aad8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"019556374a6f3debde3694fa8e340ea3"} 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/bdd11fad-1e39-4a22-83a4-9e4012abca86"},{"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/8f2fc3d4-d67e-47a1-b968-25cc249fda9a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"019556374a6f3debde3694fa8e340ea3"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0a54e680-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.98001,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0a54e680-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173837,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzN30.CDrJv-Ma96I0k-iPzQlefLu7QQGXiUjBJxzqLqH2Cvw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0a54e680-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"edb6573695ce5ed3c8b21f073dd393eb"} gateway-1 | {"time_local":"24/Sep/2024:10:30:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.096","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"edb6573695ce5ed3c8b21f073dd393eb"} device-1 | {"level":"info","message":"GET /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a? 200 58ms","method":"GET","requestID":"edb6573695ce5ed3c8b21f073dd393eb","responseTime":58,"status":200,"url":"/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzOH0.7wSM7f8-QU4xRg0hBUcIPCt0x1X_TDzXIiLDjgeP-bs","level":"info","message":"auth send jwt","requestID":"084a563fc6a2654fac16d312973e76a8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"084a563fc6a2654fac16d312973e76a8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"084a563fc6a2654fac16d312973e76a8"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.93145,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"084a563fc6a2654fac16d312973e76a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173838,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzOH0.7wSM7f8-QU4xRg0hBUcIPCt0x1X_TDzXIiLDjgeP-bs"} authorization-1 | {"level":"info","message":"POST /authorize 200 46ms","method":"POST","requestID":"084a563fc6a2654fac16d312973e76a8","responseTime":46,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:33.534810486Z"}]},"request_id":"dd6fbac3-0d07-405e-8e82-b35650b50f6e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173838.1604462} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"084a563fc6a2654fac16d312973e76a8","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"edf05a61-e274-405d-81d7-97082ea80b4d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173838.1642609} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0585f9cf-75e2-43f7-84e4-4be638d64f2f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173838.1653895} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"0a54e680-7a60-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"084a563fc6a2654fac16d312973e76a8"} gateway-1 | {"time_local":"24/Sep/2024:10:30:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.105","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"084a563fc6a2654fac16d312973e76a8"} device-1 | {"level":"info","message":"GET /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86? 200 70ms","method":"GET","requestID":"084a563fc6a2654fac16d312973e76a8","responseTime":70,"status":200,"url":"/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0a54e680-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0a54e680-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54'","requestID":"0a54e680-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54'","requestID":"0a54e680-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0a54e680-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 160ms","method":"POST","requestID":"0a54e680-7a60-11ef-8bac-49f2f0d74a99","responseTime":160,"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":"0a54e680-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54","device":"bdd11fad-1e39-4a22-83a4-9e4012abca86","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 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54","device":"8f2fc3d4-d67e-47a1-b968-25cc249fda9a","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 | {"device":"bdd11fad-1e39-4a22-83a4-9e4012abca86","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"bdd11fad-1e39-4a22-83a4-9e4012abca86","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"8f2fc3d4-d67e-47a1-b968-25cc249fda9a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"8f2fc3d4-d67e-47a1-b968-25cc249fda9a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"019556374a6f3debde3694fa8e340ea3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a8bfc10-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:38Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 8590115213658422590 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:Kuiv\r\na=ice-pwd:5niiSnJn893RuO/eyNTuAmZF\r\na=ice-options:trickle\r\na=fingerprint:sha-256 ED:7E:0F:C8:5F:05:21:19:4C:0E:18:D0:D9:A3:B4:18:CF:04:07:00:50:D9:AE:5E:AD:8A:E3:4C:49:92:35:EA\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"8f2fc3d4-d67e-47a1-b968-25cc249fda9a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a8bfc10-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/signaling 200 39ms","method":"POST","requestID":"0a8bfc10-7a60-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/signaling"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea512906-7efb-473d-96b0-468fff08e92e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173838.4479513} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.28684,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0a8bfc10-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"0a8bfc10-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a941260-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":31.366926,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff8d64af-574f-4b9b-9638-24b49ea31432","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173838.475378} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0a941260-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"0a941260-7a60-11ef-8bac-49f2f0d74a99","responseTime":35,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 856891277521808082 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:HofM\r\na=ice-pwd:rbPnPky6go/T6L7jeWsEcc3s\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F7:CA:5C:36:BB:DC:F5:C3:C2:F8:9B:7F:6F:32:AE:AA:B1:33:B4:F9:23:AC:B4:1F:41:8F:4A:9B:A0:4D:42: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":"bdd11fad-1e39-4a22-83a4-9e4012abca86","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2062060080 1 udp 2113937151 07338a1a-702d-42b3-b0d3-cfca27880083.local 33676 typ host generation 0 ufrag HofM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bdd11fad-1e39-4a22-83a4-9e4012abca86","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a941260-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/signaling 200 50ms","method":"POST","requestID":"0a941260-7a60-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/signaling"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86'"} device-1 | {"content":{"candidate":"candidate:4274380879 1 udp 1677729535 141.24.211.56 33676 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag HofM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bdd11fad-1e39-4a22-83a4-9e4012abca86","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/bdd11fad-1e39-4a22-83a4-9e4012abca86'"} device-1 | {"content":{"candidate":"candidate:238617015 1 udp 2113937151 38eeb668-2b9f-4fd5-905b-2d58845e7a1a.local 34482 typ host generation 0 ufrag Kuiv network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8f2fc3d4-d67e-47a1-b968-25cc249fda9a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2316594120 1 udp 1677729535 141.24.211.56 34482 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Kuiv network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8f2fc3d4-d67e-47a1-b968-25cc249fda9a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3642348611 1 udp 33562623 141.24.210.113 59770 typ relay raddr 141.24.211.56 rport 34482 generation 0 ufrag Kuiv network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8f2fc3d4-d67e-47a1-b968-25cc249fda9a","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/8f2fc3d4-d67e-47a1-b968-25cc249fda9a'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a'"} device-1 | {"device":"8f2fc3d4-d67e-47a1-b968-25cc249fda9a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"bdd11fad-1e39-4a22-83a4-9e4012abca86","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/31222ade-48ae-496e-a42d-3c550dd3fc54' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"31222ade-48ae-496e-a42d-3c550dd3fc54","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:2915590084 1 udp 33562623 141.24.210.113 50098 typ relay raddr 141.24.211.56 rport 33676 generation 0 ufrag HofM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bdd11fad-1e39-4a22-83a4-9e4012abca86","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4019848ab7212f5850da0b15f487e107","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 41ms","method":"GET","requestID":"4019848ab7212f5850da0b15f487e107","responseTime":41,"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":"new","url":"http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86"},{"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/8f2fc3d4-d67e-47a1-b968-25cc249fda9a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54"}}},"level":"info","message":"received a callback","requestID":"4019848ab7212f5850da0b15f487e107"} gateway-1 | {"time_local":"24/Sep/2024:10:30:38 +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.059","http_referrer":"","http_user_agent":"node-fetch","requestID":"4019848ab7212f5850da0b15f487e107"} device-1 | {"device":"bdd11fad-1e39-4a22-83a4-9e4012abca86","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 16ms","method":"POST","requestID":"4019848ab7212f5850da0b15f487e107","responseTime":16,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"8f2fc3d4-d67e-47a1-b968-25cc249fda9a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"peerconnection":"31222ade-48ae-496e-a42d-3c550dd3fc54","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8f2fc3d4-d67e-47a1-b968-25cc249fda9a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"bdd11fad-1e39-4a22-83a4-9e4012abca86","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"31222ade-48ae-496e-a42d-3c550dd3fc54","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/31222ade-48ae-496e-a42d-3c550dd3fc54' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"31222ade-48ae-496e-a42d-3c550dd3fc54","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c5c63219418c726bf86923b973b02c99","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":"c5c63219418c726bf86923b973b02c99","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/bdd11fad-1e39-4a22-83a4-9e4012abca86"},{"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/8f2fc3d4-d67e-47a1-b968-25cc249fda9a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54"}}},"level":"info","message":"received a callback","requestID":"c5c63219418c726bf86923b973b02c99"} device-1 | {"device":"bdd11fad-1e39-4a22-83a4-9e4012abca86","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0ac115d0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F31222ade-48ae-496e-a42d-3c550dd3fc54","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab61cea9-9f9f-490b-b2b3-e333c7283348","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173838.805307} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":27.854038,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0ac115d0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54","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 31ms","method":"POST","requestID":"0ac115d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0ac115d0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54 200 46ms","method":"GET","requestID":"0ac115d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzOH0.7wSM7f8-QU4xRg0hBUcIPCt0x1X_TDzXIiLDjgeP-bs","level":"info","message":"auth send jwt","requestID":"5e02b50fb4ee7da34a3a69e14743e023"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5e02b50fb4ee7da34a3a69e14743e023","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/391b8e75-0526-47c6-bc3b-283bb45437b5","requestID":"5e02b50fb4ee7da34a3a69e14743e023"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.927414,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5e02b50fb4ee7da34a3a69e14743e023","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173838,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzOH0.7wSM7f8-QU4xRg0hBUcIPCt0x1X_TDzXIiLDjgeP-bs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5e02b50fb4ee7da34a3a69e14743e023","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 175ms","method":"POST","requestID":"c5c63219418c726bf86923b973b02c99","responseTime":175,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30:38 +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.180","http_referrer":"","http_user_agent":"node-fetch","requestID":"c5c63219418c726bf86923b973b02c99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ada9140-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/391b8e75-0526-47c6-bc3b-283bb45437b5","requestID":"5e02b50fb4ee7da34a3a69e14743e023"} experiment-1 | {"level":"info","message":"GET /experiments/391b8e75-0526-47c6-bc3b-283bb45437b5 200 53ms","method":"GET","requestID":"5e02b50fb4ee7da34a3a69e14743e023","responseTime":53,"status":200,"url":"/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"} gateway-1 | {"time_local":"24/Sep/2024:10:30:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/391b8e75-0526-47c6-bc3b-283bb45437b5 HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e02b50fb4ee7da34a3a69e14743e023"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.663555,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"abe84947-3531-4c5a-8367-bcaa539c691e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173838.940709} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0ada9140-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzOH0.7wSM7f8-QU4xRg0hBUcIPCt0x1X_TDzXIiLDjgeP-bs","level":"info","message":"auth send jwt","requestID":"509542a9ff0fc739bab8a10d2e82bb95"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/391b8e75-0526-47c6-bc3b-283bb45437b5","requestID":"509542a9ff0fc739bab8a10d2e82bb95"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"0ada9140-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"509542a9ff0fc739bab8a10d2e82bb95","responseTime":12,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ada9140-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/signaling 200 23ms","method":"POST","requestID":"0ada9140-7a60-11ef-8bac-49f2f0d74a99","responseTime":23,"status":200,"url":"/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/signaling"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:38Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ade88e0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.975323,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"509542a9ff0fc739bab8a10d2e82bb95","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173838,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzOH0.7wSM7f8-QU4xRg0hBUcIPCt0x1X_TDzXIiLDjgeP-bs"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"509542a9ff0fc739bab8a10d2e82bb95","responseTime":32,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.471541,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:38Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"207d8c53-4b4f-4052-a213-70d110cd774a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173838.9944654} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0ade88e0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","object_type":"device","rebac_allow":false,"scope_allow":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":"0ade88e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":19,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ade88e0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/signaling 200 55ms","method":"POST","requestID":"0ade88e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":55,"status":200,"url":"/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Attempting to finish experiment","requestID":"509542a9ff0fc739bab8a10d2e82bb95"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0ae76280-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:39Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":25.617384,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0ae76280-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173838,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzOH0.7wSM7f8-QU4xRg0hBUcIPCt0x1X_TDzXIiLDjgeP-bs"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"0ae76280-7a60-11ef-8bac-49f2f0d74a99","responseTime":30,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54","device":"bdd11fad-1e39-4a22-83a4-9e4012abca86","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54","device":"8f2fc3d4-d67e-47a1-b968-25cc249fda9a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F31222ade-48ae-496e-a42d-3c550dd3fc54': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F31222ade-48ae-496e-a42d-3c550dd3fc54","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"2c78e8b9-1f29-4d7a-bfc9-d516a24ad022","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.109552} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1fc9d3bc-d6b2-48d4-9791-eae6970aabd8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.110812} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"0ae76280-7a60-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"31222ade-48ae-496e-a42d-3c550dd3fc54","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b07c7d139e7fa43f3902001f8aafb9d2","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":"b07c7d139e7fa43f3902001f8aafb9d2","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/bdd11fad-1e39-4a22-83a4-9e4012abca86"},{"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/8f2fc3d4-d67e-47a1-b968-25cc249fda9a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54"}}},"level":"info","message":"received a callback","requestID":"b07c7d139e7fa43f3902001f8aafb9d2"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"07967acdff386625b948983dff0e7d72","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":"07967acdff386625b948983dff0e7d72","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":"connected","url":"http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86"},{"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/8f2fc3d4-d67e-47a1-b968-25cc249fda9a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54"}}},"level":"info","message":"received a callback","requestID":"07967acdff386625b948983dff0e7d72"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86'"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0ae76280-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54 204 183ms","method":"DELETE","requestID":"0ae76280-7a60-11ef-8bac-49f2f0d74a99","responseTime":183,"status":204,"url":"/peerconnections/31222ade-48ae-496e-a42d-3c550dd3fc54"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"},"level":"info","message":"Successfully finished experiment","requestID":"509542a9ff0fc739bab8a10d2e82bb95"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b1661c0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:39Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdd11fad-1e39-4a22-83a4-9e4012abca86","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a63c2a0-5a74-42b5-8b6a-a75c5be4e7b8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.3569374} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":28.259054,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0b1661c0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"0b1661c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F391b8e75-0526-47c6-bc3b-283bb45437b5': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F391b8e75-0526-47c6-bc3b-283bb45437b5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"3975f551-4d5f-45f5-ad70-7885c951390e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.3627305} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b1661c0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/signaling 200 37ms","method":"POST","requestID":"0b1661c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b1cf170-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"325335dc-6a66-4d3b-a339-a4b92a2f5c52","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.3633013} authorization-1 | {"level":"info","message":"POST /relations/update 200 77ms","method":"POST","requestID":"509542a9ff0fc739bab8a10d2e82bb95","responseTime":77,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:39Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8f2fc3d4-d67e-47a1-b968-25cc249fda9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7324edf9-be8b-494a-95d9-f0e1ac29e7d6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.3947313} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.274213,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0b1cf170-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"0b1cf170-7a60-11ef-8bac-49f2f0d74a99","responseTime":34,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b1cf170-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/signaling 200 64ms","method":"POST","requestID":"0b1cf170-7a60-11ef-8bac-49f2f0d74a99","responseTime":64,"status":200,"url":"/devices/8f2fc3d4-d67e-47a1-b968-25cc249fda9a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/391b8e75-0526-47c6-bc3b-283bb45437b5","requestID":"509542a9ff0fc739bab8a10d2e82bb95"} experiment-1 | {"level":"info","message":"DELETE /experiments/391b8e75-0526-47c6-bc3b-283bb45437b5 204 687ms","method":"DELETE","requestID":"509542a9ff0fc739bab8a10d2e82bb95","responseTime":687,"status":204,"url":"/experiments/391b8e75-0526-47c6-bc3b-283bb45437b5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 473ms","method":"POST","requestID":"b07c7d139e7fa43f3902001f8aafb9d2","responseTime":473,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 468ms","method":"POST","requestID":"07967acdff386625b948983dff0e7d72","responseTime":468,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/391b8e75-0526-47c6-bc3b-283bb45437b5 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.694","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"509542a9ff0fc739bab8a10d2e82bb95"} gateway-1 | {"time_local":"24/Sep/2024:10:30:39 +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.511","http_referrer":"","http_user_agent":"node-fetch","requestID":"b07c7d139e7fa43f3902001f8aafb9d2"} gateway-1 | {"time_local":"24/Sep/2024:10:30:39 +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.475","http_referrer":"","http_user_agent":"node-fetch","requestID":"07967acdff386625b948983dff0e7d72"} gateway-1 | {"time_local":"24/Sep/2024:10:30:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3191","request_time":"2.493","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":"1d736eed0ba3da8f81a8a795b7fb81d5"} gateway-1 | {"time_local":"24/Sep/2024:10:30:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3193","request_time":"2.574","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":"bd67a3479e75a671a60d1fa8ffe12e76"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzOX0.tVZ0zBMPh68Vsy9PjZJnNZK9-io66pjHjQfvjmHeokw","level":"info","message":"auth send jwt","requestID":"572356d1cc4a2659f5facb7ba3f99615"} authentication-1 | {"level":"info","message":"GET /auth 200 52ms","method":"GET","requestID":"572356d1cc4a2659f5facb7ba3f99615","responseTime":52,"status":200,"url":"/auth"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/bdd11fad-1e39-4a22-83a4-9e4012abca86' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"572356d1cc4a2659f5facb7ba3f99615"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:39Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.656827,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"572356d1cc4a2659f5facb7ba3f99615","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173839,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzOX0.tVZ0zBMPh68Vsy9PjZJnNZK9-io66pjHjQfvjmHeokw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"572356d1cc4a2659f5facb7ba3f99615","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/8f2fc3d4-d67e-47a1-b968-25cc249fda9a' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4d3b47d8-f3be-415a-be65-467395dab0cd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.792839} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"572356d1cc4a2659f5facb7ba3f99615","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9417bf89-221d-4ca5-a928-fbd655df66bb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.800211} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"572356d1cc4a2659f5facb7ba3f99615","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"4f50c366-6bfc-480c-bb65-7678c325fc57","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.8496737} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96380851-3455-48e6-8222-fa0ca09e3112","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.8509529} authorization-1 | {"level":"info","message":"POST /relations/update 200 51ms","method":"POST","requestID":"572356d1cc4a2659f5facb7ba3f99615","responseTime":51,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:39.849635956Z"}]},"request_id":"cdf39303-9ca2-44f5-91aa-dac34435e7e8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.8580854} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"572356d1cc4a2659f5facb7ba3f99615"} gateway-1 | {"time_local":"24/Sep/2024:10:30:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.214","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"572356d1cc4a2659f5facb7ba3f99615"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzOX0.tVZ0zBMPh68Vsy9PjZJnNZK9-io66pjHjQfvjmHeokw","level":"info","message":"auth send jwt","requestID":"61e73be53eeb95159e6ed089ec7222c6"} authentication-1 | {"level":"info","message":"GET /auth 200 10ms","method":"GET","requestID":"61e73be53eeb95159e6ed089ec7222c6","responseTime":10,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices? 201 140ms","method":"POST","requestID":"572356d1cc4a2659f5facb7ba3f99615","responseTime":140,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 44ms","method":"POST","requestID":"572356d1cc4a2659f5facb7ba3f99615","responseTime":44,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices called","requestID":"61e73be53eeb95159e6ed089ec7222c6"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:39Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.782132,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"61e73be53eeb95159e6ed089ec7222c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173839,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzgzOX0.tVZ0zBMPh68Vsy9PjZJnNZK9-io66pjHjQfvjmHeokw"} authorization-1 | {"level":"info","message":"POST /authorize 200 24ms","method":"POST","requestID":"61e73be53eeb95159e6ed089ec7222c6","responseTime":24,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ab67ad99-24b6-4682-9c3c-dd00ac75c853","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.974997} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"61e73be53eeb95159e6ed089ec7222c6","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b47df9d7-c833-4fdb-97c8-d0dcb7be762e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.9826603} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"61e73be53eeb95159e6ed089ec7222c6","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"8ab1ffc1-0aa9-4a36-a0d7-d338e3e8d60a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.9952788} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"65e76284-e911-4366-a1df-9d699c0ee638","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173839.996549} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"61e73be53eeb95159e6ed089ec7222c6","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:39.995238529Z"}]},"request_id":"a22f20e2-89bf-482f-9432-11d8d363017f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173840.0044007} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"61e73be53eeb95159e6ed089ec7222c6"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"61e73be53eeb95159e6ed089ec7222c6"} device-1 | {"level":"info","message":"POST /devices? 201 107ms","method":"POST","requestID":"61e73be53eeb95159e6ed089ec7222c6","responseTime":107,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"61e73be53eeb95159e6ed089ec7222c6","responseTime":7,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cc4d933521a1894a0f9a276dcdcf7a33","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":"cc4d933521a1894a0f9a276dcdcf7a33","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/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":"cc4d933521a1894a0f9a276dcdcf7a33"} device-1 | {"level":"info","message":"OPTIONS /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/websocket 200 1ms","method":"OPTIONS","requestID":"cc4d933521a1894a0f9a276dcdcf7a33","responseTime":1,"status":200,"url":"/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w","level":"info","message":"auth send jwt","requestID":"c96fdba40d695bd0342081db1331a227"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c96fdba40d695bd0342081db1331a227","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c96fdba40d695bd0342081db1331a227"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.931601,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c96fdba40d695bd0342081db1331a227","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173843,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c96fdba40d695bd0342081db1331a227","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:30:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/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":"3065d0d4d254b8480199645ced7d242d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3065d0d4d254b8480199645ced7d242d","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":"3065d0d4d254b8480199645ced7d242d","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/websocket 200 1ms","method":"OPTIONS","requestID":"3065d0d4d254b8480199645ced7d242d","responseTime":1,"status":200,"url":"/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w","level":"info","message":"auth send jwt","requestID":"ac49c5f2f748df2c66d003568781f89e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ac49c5f2f748df2c66d003568781f89e","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ac49c5f2f748df2c66d003568781f89e"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919291,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ac49c5f2f748df2c66d003568781f89e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173843,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ac49c5f2f748df2c66d003568781f89e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c96fdba40d695bd0342081db1331a227"} device-1 | {"level":"info","message":"POST /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/websocket 200 106ms","method":"POST","requestID":"c96fdba40d695bd0342081db1331a227","responseTime":106,"status":200,"url":"/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:30:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.112","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":"c96fdba40d695bd0342081db1331a227"} gateway-1 | {"time_local":"24/Sep/2024:10:30:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.071","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":"ac49c5f2f748df2c66d003568781f89e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ac49c5f2f748df2c66d003568781f89e"} device-1 | {"level":"info","message":"POST /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/websocket 200 65ms","method":"POST","requestID":"ac49c5f2f748df2c66d003568781f89e","responseTime":65,"status":200,"url":"/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w","level":"info","message":"auth send jwt","requestID":"51a062f725f1e81fd8614ccd3ed2bffc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"51a062f725f1e81fd8614ccd3ed2bffc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"51a062f725f1e81fd8614ccd3ed2bffc"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.992126,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"51a062f725f1e81fd8614ccd3ed2bffc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173843,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"51a062f725f1e81fd8614ccd3ed2bffc","responseTime":30,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:39.849635956Z"}]},"request_id":"9ecfa6f3-5d58-4b85-acb1-f396470dc78a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.2507677} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"51a062f725f1e81fd8614ccd3ed2bffc","responseTime":4,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:30:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51a062f725f1e81fd8614ccd3ed2bffc"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"51a062f725f1e81fd8614ccd3ed2bffc"} device-1 | {"level":"info","message":"GET /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186? 200 44ms","method":"GET","requestID":"51a062f725f1e81fd8614ccd3ed2bffc","responseTime":44,"status":200,"url":"/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w","level":"info","message":"auth send jwt","requestID":"ab15e200e691d8b73850e4a246849f60"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ab15e200e691d8b73850e4a246849f60","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab15e200e691d8b73850e4a246849f60"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.924148,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ab15e200e691d8b73850e4a246849f60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173843,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w"} authorization-1 | {"level":"info","message":"POST /authorize 200 47ms","method":"POST","requestID":"ab15e200e691d8b73850e4a246849f60","responseTime":47,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:39.995238529Z"}]},"request_id":"8fd3f6a3-4fa2-4585-87aa-8e08a2da74b8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.3161292} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ab15e200e691d8b73850e4a246849f60","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab15e200e691d8b73850e4a246849f60"} gateway-1 | {"time_local":"24/Sep/2024:10:30:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ab15e200e691d8b73850e4a246849f60"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w","level":"info","message":"auth send jwt","requestID":"3d0029882045f3c63aca1d21e90880a6"} authentication-1 | {"level":"info","message":"GET /auth 200 10ms","method":"GET","requestID":"3d0029882045f3c63aca1d21e90880a6","responseTime":10,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25? 200 73ms","method":"GET","requestID":"ab15e200e691d8b73850e4a246849f60","responseTime":73,"status":200,"url":"/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25?"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3d0029882045f3c63aca1d21e90880a6"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.958206,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3d0029882045f3c63aca1d21e90880a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173843,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3d0029882045f3c63aca1d21e90880a6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Attempting to run experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Attempting to book experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Successfully booked experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0d94a830-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.994705,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0d94a830-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173843,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0d94a830-7a60-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0d9607c0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.953232,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0d9607c0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173843,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0d9607c0-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:39.995238529Z"}]},"request_id":"3c770491-d105-430f-9a13-8e7f3ebc193d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.5352328} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0d9607c0-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:39.849635956Z"}]},"request_id":"1a8800d4-cf76-470a-a9e1-e0ccc8aede33","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.540428} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"0d94a830-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0d9607c0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25? 200 29ms","method":"GET","requestID":"0d9607c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":29,"status":200,"url":"/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0d94a830-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Setting up experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} device-1 | {"level":"info","message":"GET /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186? 200 73ms","method":"GET","requestID":"0d94a830-7a60-11ef-8bac-49f2f0d74a99","responseTime":73,"status":200,"url":"/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0dad6050-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Successfully set up experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0dadae70-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0dadfc90-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.855154,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0dad6050-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173843,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0dad6050-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Successfully running experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:45636","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":35.391927,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9d9d049d-27a1-40d0-95fc-ae29b90a5251","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.6832538} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0dadfc90-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 42ms","method":"POST","requestID":"0dadfc90-7a60-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0dadfc90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/signaling 200 53ms","method":"POST","requestID":"0dadfc90-7a60-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/signaling"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.080987,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0dadae70-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173843,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w"} authorization-1 | {"level":"info","message":"POST /authorize 200 56ms","method":"POST","requestID":"0dadae70-7a60-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0db6fd40-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:39.849635956Z"}]},"request_id":"4ba18ebd-bea6-44c4-83a9-81c3c27e2dd8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.735232} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:39.995238529Z"}]},"request_id":"63b06bc6-5221-4ac1-a064-67aa0fbcce19","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.7420459} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19d51d9e-f5ab-408d-ae30-93f6a68ff8bd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.7465377} authorization-1 | {"level":"info","message":"POST /relations/query 200 59ms","method":"POST","requestID":"0dad6050-7a60-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0dad6050-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186? 200 135ms","method":"GET","requestID":"0dad6050-7a60-11ef-8bac-49f2f0d74a99","responseTime":135,"status":200,"url":"/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0dadae70-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25? 200 136ms","method":"GET","requestID":"0dadae70-7a60-11ef-8bac-49f2f0d74a99","responseTime":136,"status":200,"url":"/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0dc2e420-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/query 200 73ms","method":"POST","requestID":"0dadae70-7a60-11ef-8bac-49f2f0d74a99","responseTime":73,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.602791,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0db6fd40-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 105ms","method":"POST","requestID":"0db6fd40-7a60-11ef-8bac-49f2f0d74a99","responseTime":105,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0db6fd40-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/signaling 200 116ms","method":"POST","requestID":"0db6fd40-7a60-11ef-8bac-49f2f0d74a99","responseTime":116,"status":200,"url":"/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/signaling"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1af32c93-2ca7-471c-a476-f343817b2600#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1af32c93-2ca7-471c-a476-f343817b2600","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"86eba077-98fd-473c-ba5a-9db287198977","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.8156881} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"152689a6-306e-47de-aa98-101b5d440c93","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.8172152} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87a1462c-e45e-41f0-a070-6c3876f04af1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.8548267} authorization-1 | {"level":"info","message":"POST /relations/update 200 150ms","method":"POST","requestID":"3d0029882045f3c63aca1d21e90880a6","responseTime":150,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.496222,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0dc2e420-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","object_type":"device","rebac_allow":false,"scope_allow":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":"0dc2e420-7a60-11ef-8bac-49f2f0d74a99","responseTime":19,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3d0029882045f3c63aca1d21e90880a6"} gateway-1 | {"time_local":"24/Sep/2024:10:30:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.555","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d0029882045f3c63aca1d21e90880a6"} experiment-1 | {"level":"info","message":"POST /experiments? 201 544ms","method":"POST","requestID":"3d0029882045f3c63aca1d21e90880a6","responseTime":544,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0dc2e420-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/signaling 200 104ms","method":"POST","requestID":"0dc2e420-7a60-11ef-8bac-49f2f0d74a99","responseTime":104,"status":200,"url":"/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w","level":"info","message":"auth send jwt","requestID":"968fc284c68f2c3fd3110715a935f73e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0dd337d0-7a60-11ef-8bac-49f2f0d74a99"} authentication-1 | {"level":"info","message":"GET /auth 200 34ms","method":"GET","requestID":"968fc284c68f2c3fd3110715a935f73e","responseTime":34,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"968fc284c68f2c3fd3110715a935f73e"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.34828,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b717910-b576-47f2-8409-b1a566360ce4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.9249563} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0dd337d0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","object_type":"device","rebac_allow":false,"scope_allow":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":"0dd337d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0dd337d0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/signaling 200 20ms","method":"POST","requestID":"0dd337d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":20,"status":200,"url":"/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Building connection plan","requestID":"3d0029882045f3c63aca1d21e90880a6"} 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":"86c8617d-f019-492e-9fd3-a8bfb07e3c98"},{"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":"5bd2d60c-b74d-494f-949b-49562fc0830a"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"dd4239b4-682f-4179-b7dc-657f213e85e1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3d0029882045f3c63aca1d21e90880a6"} 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/05fec6c1-6800-4a8f-8bb2-c1d160058d25"},{"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/3ffdfe61-9227-434e-94b5-9527f0dbb186"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3d0029882045f3c63aca1d21e90880a6"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":7.239494,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"968fc284c68f2c3fd3110715a935f73e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173843,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0dd8b610-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 19ms","method":"POST","requestID":"968fc284c68f2c3fd3110715a935f73e","responseTime":19,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.923732,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0dd8b610-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173843,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0M30.Nh3Vc4gNVni3XtmKbt_8vkBzNvI92ZCXaQzFrcrUH5w"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"0dd8b610-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:39.849635956Z"}]},"request_id":"e32d6821-98d4-4b73-8c1b-d9dd78606c86","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173843.9883554} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"968fc284c68f2c3fd3110715a935f73e","responseTime":10,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"968fc284c68f2c3fd3110715a935f73e"} gateway-1 | {"time_local":"24/Sep/2024:10:30:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"968fc284c68f2c3fd3110715a935f73e"} device-1 | {"level":"info","message":"GET /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186? 200 83ms","method":"GET","requestID":"968fc284c68f2c3fd3110715a935f73e","responseTime":83,"status":200,"url":"/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NH0.cQRu803PlDOm_2hNuXJjPcS6nkwuv8UPCw1Aq-u_JZI","level":"info","message":"auth send jwt","requestID":"f34965797ce157467ccf0373c58737cf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f34965797ce157467ccf0373c58737cf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f34965797ce157467ccf0373c58737cf"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"1e26826a-6a8c-4cb2-8f64-0f265ade99c1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173844.0203855} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"351c7f8a-339a-48aa-9c52-d8347d957b49","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173844.0217116} authorization-1 | {"level":"info","message":"POST /relations/update 200 37ms","method":"POST","requestID":"0dd8b610-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.981837,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f34965797ce157467ccf0373c58737cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173844,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NH0.cQRu803PlDOm_2hNuXJjPcS6nkwuv8UPCw1Aq-u_JZI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f34965797ce157467ccf0373c58737cf","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:39.995238529Z"}]},"request_id":"2ca1fda7-7b40-4173-841d-912725c42857","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173844.0604534} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f34965797ce157467ccf0373c58737cf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0dd8b610-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0dd8b610-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512'","requestID":"0dd8b610-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512'","requestID":"0dd8b610-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0dd8b610-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 134ms","method":"POST","requestID":"0dd8b610-7a60-11ef-8bac-49f2f0d74a99","responseTime":134,"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":"f34965797ce157467ccf0373c58737cf"} device-1 | {"level":"info","message":"GET /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25? 200 71ms","method":"GET","requestID":"f34965797ce157467ccf0373c58737cf","responseTime":71,"status":200,"url":"/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.084","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f34965797ce157467ccf0373c58737cf"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0dd8b610-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512","device":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","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 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512","device":"3ffdfe61-9227-434e-94b5-9527f0dbb186","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/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3d0029882045f3c63aca1d21e90880a6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e09ff40-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d6138c5-0cb2-4d48-a433-f58ea9455665","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173844.2815661} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":9.340129,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0e09ff40-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","object_type":"device","rebac_allow":false,"scope_allow":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":"0e09ff40-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"device":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e09ff40-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/signaling 200 51ms","method":"POST","requestID":"0e09ff40-7a60-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e11ee80-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"device":"3ffdfe61-9227-434e-94b5-9527f0dbb186","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3ffdfe61-9227-434e-94b5-9527f0dbb186","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e11ee80-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b6615bb5-891b-46e8-8354-7f725ba83267","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173844.3380342} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.0789,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0e11ee80-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","object_type":"device","rebac_allow":false,"scope_allow":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":"0e11ee80-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/signaling 200 31ms","method":"POST","requestID":"0e11ee80-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 595279648046994419 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:ejX6\r\na=ice-pwd:fs+LD4zVz4CgPBG2X4I0syz/\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E7:94:1E:B1:D2:8A:D8:B7:ED:3C:DA:CC:CF:24:1A:B4:A7:1E:28:66:54:00:21:3C:09:B5:96:A3:B3:CD:84:AD\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"3ffdfe61-9227-434e-94b5-9527f0dbb186","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 3093118222815113335 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:Xzi1\r\na=ice-pwd:DizADHnOv/2bkPAqJtkKcOi5\r\na=ice-options:trickle\r\na=fingerprint:sha-256 CD:44:7F:BC:2F:68:4A:FB:BA:58:5F:8A:16:E7:CA:E3:3B:72:FF:38:A2:EC:0F:A7:76:9B:EB:B0:A3:3A:D2: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":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:908809558 1 udp 2113937151 755d5a98-8766-406d-b173-867e724a5eb9.local 42988 typ host generation 0 ufrag Xzi1 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2768303173 1 udp 1677729535 141.24.211.56 42988 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Xzi1 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","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/05fec6c1-6800-4a8f-8bb2-c1d160058d25'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25'"} device-1 | {"content":{"candidate":"candidate:1133081096 1 udp 2113937151 743d36fb-c830-4b2a-a944-e5efe7b8df16.local 40046 typ host generation 0 ufrag ejX6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3ffdfe61-9227-434e-94b5-9527f0dbb186","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3349420151 1 udp 1677729535 141.24.211.56 40046 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ejX6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3ffdfe61-9227-434e-94b5-9527f0dbb186","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2494146556 1 udp 33562623 141.24.210.113 56727 typ relay raddr 141.24.211.56 rport 40046 generation 0 ufrag ejX6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3ffdfe61-9227-434e-94b5-9527f0dbb186","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/3ffdfe61-9227-434e-94b5-9527f0dbb186'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186'"} device-1 | {"content":{"candidate":"candidate:455888823 1 udp 33562623 141.24.210.113 64343 typ relay raddr 141.24.211.56 rport 42988 generation 0 ufrag Xzi1 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"3ffdfe61-9227-434e-94b5-9527f0dbb186","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"3ffdfe61-9227-434e-94b5-9527f0dbb186","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/2b6ae6a6-1500-44ce-9844-6c4bb69d1512' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2b6ae6a6-1500-44ce-9844-6c4bb69d1512","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f066023c7ddbf5e278e6a9b04e8c00ac","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":"f066023c7ddbf5e278e6a9b04e8c00ac","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":"connecting","url":"http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25"},{"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/3ffdfe61-9227-434e-94b5-9527f0dbb186"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512"}}},"level":"info","message":"received a callback","requestID":"f066023c7ddbf5e278e6a9b04e8c00ac"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"f066023c7ddbf5e278e6a9b04e8c00ac","responseTime":7,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"3ffdfe61-9227-434e-94b5-9527f0dbb186","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} gateway-1 | {"time_local":"24/Sep/2024:10:30:44 +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.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"f066023c7ddbf5e278e6a9b04e8c00ac"} device-1 | {"data":{"peerconnection":"2b6ae6a6-1500-44ce-9844-6c4bb69d1512","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"2b6ae6a6-1500-44ce-9844-6c4bb69d1512","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/2b6ae6a6-1500-44ce-9844-6c4bb69d1512' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2b6ae6a6-1500-44ce-9844-6c4bb69d1512","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a725db358981fa63d7823be797eb79cc","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":"a725db358981fa63d7823be797eb79cc","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/05fec6c1-6800-4a8f-8bb2-c1d160058d25"},{"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/3ffdfe61-9227-434e-94b5-9527f0dbb186"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512"}}},"level":"info","message":"received a callback","requestID":"a725db358981fa63d7823be797eb79cc"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0e5deba0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2b6ae6a6-1500-44ce-9844-6c4bb69d1512","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4fcec8b5-28bc-472a-9ab7-e3a42c4fbc0d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173844.8368108} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":34.264329,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0e5deba0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512","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 37ms","method":"POST","requestID":"0e5deba0-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1af32c93-2ca7-471c-a476-f343817b2600","requestID":"bf4765b72435ef64054f7c9524465f15"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NH0.cQRu803PlDOm_2hNuXJjPcS6nkwuv8UPCw1Aq-u_JZI","level":"info","message":"auth send jwt","requestID":"bf4765b72435ef64054f7c9524465f15"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"bf4765b72435ef64054f7c9524465f15","responseTime":8,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.974107,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bf4765b72435ef64054f7c9524465f15","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173844,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NH0.cQRu803PlDOm_2hNuXJjPcS6nkwuv8UPCw1Aq-u_JZI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf4765b72435ef64054f7c9524465f15","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0e5deba0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512 200 99ms","method":"GET","requestID":"0e5deba0-7a60-11ef-8bac-49f2f0d74a99","responseTime":99,"status":200,"url":"/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1af32c93-2ca7-471c-a476-f343817b2600","requestID":"bf4765b72435ef64054f7c9524465f15"} gateway-1 | {"time_local":"24/Sep/2024:10:30:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1af32c93-2ca7-471c-a476-f343817b2600 HTTP/1.1","status": "200","body_bytes_sent":"1282","request_time":"0.068","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf4765b72435ef64054f7c9524465f15"} experiment-1 | {"level":"info","message":"GET /experiments/1af32c93-2ca7-471c-a476-f343817b2600 200 64ms","method":"GET","requestID":"bf4765b72435ef64054f7c9524465f15","responseTime":64,"status":200,"url":"/experiments/1af32c93-2ca7-471c-a476-f343817b2600"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 173ms","method":"POST","requestID":"a725db358981fa63d7823be797eb79cc","responseTime":173,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e762e90-7a60-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:30:44 +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.181","http_referrer":"","http_user_agent":"node-fetch","requestID":"a725db358981fa63d7823be797eb79cc"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f30594e6-c3e5-42e0-abf5-4b0876301a48","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173844.9908657} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.245297,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0e762e90-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","object_type":"device","rebac_allow":false,"scope_allow":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":"0e762e90-7a60-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e762e90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/signaling 200 13ms","method":"POST","requestID":"0e762e90-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e789f90-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0611412c-0fc8-4de2-88d3-2a5183c3a38d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.0072205} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.192126,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0e789f90-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","object_type":"device","rebac_allow":false,"scope_allow":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":"0e789f90-7a60-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e789f90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/signaling 200 45ms","method":"POST","requestID":"0e789f90-7a60-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NX0.LlwGXPwy2QLgG_ngKApP-EGwwkaHK7A_8JBwxvBTwfM","level":"info","message":"auth send jwt","requestID":"685b37a441fc0a656143e3fa7f314705"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"685b37a441fc0a656143e3fa7f314705","responseTime":9,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1af32c93-2ca7-471c-a476-f343817b2600","requestID":"685b37a441fc0a656143e3fa7f314705"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.907718,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"685b37a441fc0a656143e3fa7f314705","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173845,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NX0.LlwGXPwy2QLgG_ngKApP-EGwwkaHK7A_8JBwxvBTwfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"685b37a441fc0a656143e3fa7f314705","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1af32c93-2ca7-471c-a476-f343817b2600","requestID":"685b37a441fc0a656143e3fa7f314705"} gateway-1 | {"time_local":"24/Sep/2024:10:30:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1af32c93-2ca7-471c-a476-f343817b2600 HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"685b37a441fc0a656143e3fa7f314705"} experiment-1 | {"level":"info","message":"GET /experiments/1af32c93-2ca7-471c-a476-f343817b2600 200 18ms","method":"GET","requestID":"685b37a441fc0a656143e3fa7f314705","responseTime":18,"status":200,"url":"/experiments/1af32c93-2ca7-471c-a476-f343817b2600"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NX0.LlwGXPwy2QLgG_ngKApP-EGwwkaHK7A_8JBwxvBTwfM","level":"info","message":"auth send jwt","requestID":"c94cb9f4101e5e878e267ea4d73ab70b"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1af32c93-2ca7-471c-a476-f343817b2600","requestID":"c94cb9f4101e5e878e267ea4d73ab70b"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"c94cb9f4101e5e878e267ea4d73ab70b","responseTime":8,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.982073,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c94cb9f4101e5e878e267ea4d73ab70b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173845,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NX0.LlwGXPwy2QLgG_ngKApP-EGwwkaHK7A_8JBwxvBTwfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c94cb9f4101e5e878e267ea4d73ab70b","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Attempting to finish experiment","requestID":"c94cb9f4101e5e878e267ea4d73ab70b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0e8ceae0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":25.258403,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0e8ceae0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173845,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NX0.LlwGXPwy2QLgG_ngKApP-EGwwkaHK7A_8JBwxvBTwfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"0e8ceae0-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512","device":"05fec6c1-6800-4a8f-8bb2-c1d160058d25","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512","device":"3ffdfe61-9227-434e-94b5-9527f0dbb186","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/2b6ae6a6-1500-44ce-9844-6c4bb69d1512' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2b6ae6a6-1500-44ce-9844-6c4bb69d1512","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1a077d91b86116f41335653b151a0a94","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":"1a077d91b86116f41335653b151a0a94","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/05fec6c1-6800-4a8f-8bb2-c1d160058d25"},{"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/3ffdfe61-9227-434e-94b5-9527f0dbb186"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512"}}},"level":"info","message":"received a callback","requestID":"1a077d91b86116f41335653b151a0a94"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f2b370ad85e1d9aa1b9068f7f5ee1d66","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":"f2b370ad85e1d9aa1b9068f7f5ee1d66","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":"closed","url":"http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25"},{"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/3ffdfe61-9227-434e-94b5-9527f0dbb186"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512"}}},"level":"info","message":"received a callback","requestID":"f2b370ad85e1d9aa1b9068f7f5ee1d66"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2b6ae6a6-1500-44ce-9844-6c4bb69d1512': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2b6ae6a6-1500-44ce-9844-6c4bb69d1512","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"fdd9a7f2-a224-45ea-b53d-7be283de2798","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.1879947} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70cff397-8848-460d-8666-788aab4c991d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.1893585} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"0e8ceae0-7a60-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0e8ceae0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512 204 124ms","method":"DELETE","requestID":"0e8ceae0-7a60-11ef-8bac-49f2f0d74a99","responseTime":124,"status":204,"url":"/peerconnections/2b6ae6a6-1500-44ce-9844-6c4bb69d1512"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1af32c93-2ca7-471c-a476-f343817b2600"},"level":"info","message":"Successfully finished experiment","requestID":"c94cb9f4101e5e878e267ea4d73ab70b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ea5a300-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F05fec6c1-6800-4a8f-8bb2-c1d160058d25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fcb633ce-11d2-48e3-9a2f-74c55c13c8ee","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.3058918} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.207079,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0ea5a300-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25","object_type":"device","rebac_allow":false,"scope_allow":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":"0ea5a300-7a60-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ea5a300-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/signaling 200 20ms","method":"POST","requestID":"0ea5a300-7a60-11ef-8bac-49f2f0d74a99","responseTime":20,"status":200,"url":"/devices/05fec6c1-6800-4a8f-8bb2-c1d160058d25/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0eade060-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1af32c93-2ca7-471c-a476-f343817b2600': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1af32c93-2ca7-471c-a476-f343817b2600","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"c3574898-b0de-4935-b837-24874d2ff5c4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.3603053} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"45f44038-97b1-4e1e-8523-84285f8d9274","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.3613386} authorization-1 | {"level":"info","message":"POST /relations/update 200 111ms","method":"POST","requestID":"c94cb9f4101e5e878e267ea4d73ab70b","responseTime":111,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":38.127028,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ffdfe61-9227-434e-94b5-9527f0dbb186","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cc687f99-0199-45ac-a4f0-6ff9549dd519","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.3686507} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0eade060-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 48ms","method":"POST","requestID":"0eade060-7a60-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0eade060-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/signaling 200 66ms","method":"POST","requestID":"0eade060-7a60-11ef-8bac-49f2f0d74a99","responseTime":66,"status":200,"url":"/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1af32c93-2ca7-471c-a476-f343817b2600","requestID":"c94cb9f4101e5e878e267ea4d73ab70b"} gateway-1 | {"time_local":"24/Sep/2024:10:30:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1af32c93-2ca7-471c-a476-f343817b2600 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.485","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c94cb9f4101e5e878e267ea4d73ab70b"} experiment-1 | {"level":"info","message":"DELETE /experiments/1af32c93-2ca7-471c-a476-f343817b2600 204 480ms","method":"DELETE","requestID":"c94cb9f4101e5e878e267ea4d73ab70b","responseTime":480,"status":204,"url":"/experiments/1af32c93-2ca7-471c-a476-f343817b2600"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 408ms","method":"POST","requestID":"1a077d91b86116f41335653b151a0a94","responseTime":408,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.412","http_referrer":"","http_user_agent":"node-fetch","requestID":"1a077d91b86116f41335653b151a0a94"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 411ms","method":"POST","requestID":"f2b370ad85e1d9aa1b9068f7f5ee1d66","responseTime":411,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.416","http_referrer":"","http_user_agent":"node-fetch","requestID":"f2b370ad85e1d9aa1b9068f7f5ee1d66"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NX0.LlwGXPwy2QLgG_ngKApP-EGwwkaHK7A_8JBwxvBTwfM","level":"info","message":"auth send jwt","requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6"} device-1 | {"level":"info","message":"postDevices called","requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6"} gateway-1 | {"time_local":"24/Sep/2024:10:30:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3191","request_time":"2.472","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":"17da707abb8c8d1aad548716f4cbe369"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6","responseTime":11,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3192","request_time":"2.517","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":"37224b2b70c8825edd8a74c9d9bcf20c"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.010536,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173845,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NX0.LlwGXPwy2QLgG_ngKApP-EGwwkaHK7A_8JBwxvBTwfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6","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/05fec6c1-6800-4a8f-8bb2-c1d160058d25' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3ffdfe61-9227-434e-94b5-9527f0dbb186' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"900e1fc0-073d-4f9f-9825-3487d24f632c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.7311177} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07a9f9e9-71bb-4a0d-82f7-871fcb64c662","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.7382503} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"93587a02-67e8-464d-b591-40c6b86c9515","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.7769122} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60f4a3d6-1d0d-4f67-81d8-17bcf9e70f60","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.7781262} authorization-1 | {"level":"info","message":"POST /relations/update 200 43ms","method":"POST","requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6","responseTime":43,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.776880018Z"}]},"request_id":"ff2c7bc2-20cc-4eac-854a-babacd08c5b8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.7851918} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6"} gateway-1 | {"time_local":"24/Sep/2024:10:30:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6"} device-1 | {"level":"info","message":"POST /devices? 201 142ms","method":"POST","requestID":"8cd61e8862ffeb602ee4ef3b0e529bc6","responseTime":142,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NX0.LlwGXPwy2QLgG_ngKApP-EGwwkaHK7A_8JBwxvBTwfM","level":"info","message":"auth send jwt","requestID":"5b863829155e934763e7de2f3d26368d"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"5b863829155e934763e7de2f3d26368d","responseTime":28,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5b863829155e934763e7de2f3d26368d"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.941312,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5b863829155e934763e7de2f3d26368d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173845,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0NX0.LlwGXPwy2QLgG_ngKApP-EGwwkaHK7A_8JBwxvBTwfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5b863829155e934763e7de2f3d26368d","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"30793cc5-169d-46c8-8567-b3e17cf9ce60","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.8892803} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5b863829155e934763e7de2f3d26368d","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a9f1403f-dac6-4479-a1bf-f3084fff7b55","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.895293} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"5b863829155e934763e7de2f3d26368d","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"fede38c5-fff4-4bee-a931-a643bbb3c8e6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.9160204} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"299ed4fd-968b-4a8e-a637-8939b96b5d1c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.9163742} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"5b863829155e934763e7de2f3d26368d","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.915988005Z"}]},"request_id":"e4cc98fa-466b-4a10-bf1d-a98383bfaf8c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173845.946358} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5b863829155e934763e7de2f3d26368d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5b863829155e934763e7de2f3d26368d"} device-1 | {"level":"info","message":"POST /devices? 201 122ms","method":"POST","requestID":"5b863829155e934763e7de2f3d26368d","responseTime":122,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5b863829155e934763e7de2f3d26368d"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"033aef6f2d954841bde36b35849fb19b"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:47Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0N30.9BEZM7wzF4-QkRM3h3AREwj9H1s4ikx6FPRxp2dAfxY","level":"info","message":"auth send jwt","requestID":"033aef6f2d954841bde36b35849fb19b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"033aef6f2d954841bde36b35849fb19b","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.872851,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"033aef6f2d954841bde36b35849fb19b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173847,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0N30.9BEZM7wzF4-QkRM3h3AREwj9H1s4ikx6FPRxp2dAfxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"033aef6f2d954841bde36b35849fb19b","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.915988005Z"}]},"request_id":"5db8ed81-e345-4548-9895-4ee6cef251fe","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173848.0105083} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"033aef6f2d954841bde36b35849fb19b","responseTime":28,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cdac4073-c4ab-44d7-920d-ed31865b1518","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173848.0169697} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"033aef6f2d954841bde36b35849fb19b","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.915988005Z"}]},"request_id":"11466fa1-e9e3-4d38-9a12-7e9c7d05f678","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173848.0708344} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"033aef6f2d954841bde36b35849fb19b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"033aef6f2d954841bde36b35849fb19b"} device-1 | {"level":"info","message":"PATCH /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf 200 107ms","method":"PATCH","requestID":"033aef6f2d954841bde36b35849fb19b","responseTime":107,"status":200,"url":"/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OH0.AzWsPOoKAsQIdSpAY1VRJPMbljr4vFV2glHjWNZIWrY","level":"info","message":"auth send jwt","requestID":"93e5130ddcdc21196617f35f96d3f921"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"93e5130ddcdc21196617f35f96d3f921","responseTime":28,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.108","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"033aef6f2d954841bde36b35849fb19b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"93e5130ddcdc21196617f35f96d3f921"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:48Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.841452,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"93e5130ddcdc21196617f35f96d3f921","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173848,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OH0.AzWsPOoKAsQIdSpAY1VRJPMbljr4vFV2glHjWNZIWrY"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"93e5130ddcdc21196617f35f96d3f921","responseTime":10,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:30:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.095","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"93e5130ddcdc21196617f35f96d3f921"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"93e5130ddcdc21196617f35f96d3f921"} device-1 | {"level":"info","message":"POST /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/websocket 200 64ms","method":"POST","requestID":"93e5130ddcdc21196617f35f96d3f921","responseTime":64,"status":200,"url":"/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf' connected"} device-1 | {"level":"info","message":"OPTIONS /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/websocket 200 3ms","method":"OPTIONS","requestID":"dbaa22c64e6736d6a0ab892b1b003df4","responseTime":3,"status":200,"url":"/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dbaa22c64e6736d6a0ab892b1b003df4","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 4ms","method":"GET","requestID":"dbaa22c64e6736d6a0ab892b1b003df4","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/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":"dbaa22c64e6736d6a0ab892b1b003df4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c","level":"info","message":"auth send jwt","requestID":"86e029858e96ae007ee472fe421cee39"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"86e029858e96ae007ee472fe421cee39"} authentication-1 | {"level":"info","message":"GET /auth 200 34ms","method":"GET","requestID":"86e029858e96ae007ee472fe421cee39","responseTime":34,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.178203,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"86e029858e96ae007ee472fe421cee39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173849,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"86e029858e96ae007ee472fe421cee39","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"86e029858e96ae007ee472fe421cee39"} gateway-1 | {"time_local":"24/Sep/2024:10:30:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.096","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":"86e029858e96ae007ee472fe421cee39"} device-1 | {"level":"info","message":"POST /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/websocket 200 92ms","method":"POST","requestID":"86e029858e96ae007ee472fe421cee39","responseTime":92,"status":200,"url":"/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c","level":"info","message":"auth send jwt","requestID":"9f0e4475f810420b6172558952eaa34c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9f0e4475f810420b6172558952eaa34c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9f0e4475f810420b6172558952eaa34c"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.11987,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9f0e4475f810420b6172558952eaa34c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173849,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9f0e4475f810420b6172558952eaa34c","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.776880018Z"}]},"request_id":"159bad3c-a57c-42b9-b535-d68ace4a9e0c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173849.4642434} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9f0e4475f810420b6172558952eaa34c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9f0e4475f810420b6172558952eaa34c"} gateway-1 | {"time_local":"24/Sep/2024:10:30:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9f0e4475f810420b6172558952eaa34c"} device-1 | {"level":"info","message":"GET /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7? 200 15ms","method":"GET","requestID":"9f0e4475f810420b6172558952eaa34c","responseTime":15,"status":200,"url":"/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c","level":"info","message":"auth send jwt","requestID":"3dbb1bdddcc94bc247b9bc4871e4a690"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"3dbb1bdddcc94bc247b9bc4871e4a690","responseTime":28,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3dbb1bdddcc94bc247b9bc4871e4a690"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.041626,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3dbb1bdddcc94bc247b9bc4871e4a690","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173849,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3dbb1bdddcc94bc247b9bc4871e4a690","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.915988005Z"}]},"request_id":"7ffd13df-92f6-4559-be09-f92e65f3fba6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173849.5140128} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3dbb1bdddcc94bc247b9bc4871e4a690","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3dbb1bdddcc94bc247b9bc4871e4a690"} device-1 | {"level":"info","message":"GET /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf? 200 49ms","method":"GET","requestID":"3dbb1bdddcc94bc247b9bc4871e4a690","responseTime":49,"status":200,"url":"/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3dbb1bdddcc94bc247b9bc4871e4a690"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c","level":"info","message":"auth send jwt","requestID":"f9045f44b506396f73ee047de2d40630"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f9045f44b506396f73ee047de2d40630","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f9045f44b506396f73ee047de2d40630"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.00077,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"f9045f44b506396f73ee047de2d40630","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173849,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"f9045f44b506396f73ee047de2d40630","responseTime":32,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Attempting to run experiment","requestID":"f9045f44b506396f73ee047de2d40630"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Attempting to book experiment","requestID":"f9045f44b506396f73ee047de2d40630"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Successfully booked experiment","requestID":"f9045f44b506396f73ee047de2d40630"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"114c8010-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.883802,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"114c8010-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173849,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"114c8010-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"114db890-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.776880018Z"}]},"request_id":"d6a02f96-d748-4a2d-b54e-7c7477de9a00","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173849.7556808} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"114c8010-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.106135,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"114db890-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173849,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"114db890-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.915988005Z"}]},"request_id":"a4862e3f-db5f-44d4-a996-c696bd1ed69c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173849.7918158} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"114db890-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"114c8010-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7? 200 58ms","method":"GET","requestID":"114c8010-7a60-11ef-8bac-49f2f0d74a99","responseTime":58,"status":200,"url":"/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"114db890-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf? 200 54ms","method":"GET","requestID":"114db890-7a60-11ef-8bac-49f2f0d74a99","responseTime":54,"status":200,"url":"/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Setting up experiment","requestID":"f9045f44b506396f73ee047de2d40630"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f9045f44b506396f73ee047de2d40630"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f9045f44b506396f73ee047de2d40630"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f9045f44b506396f73ee047de2d40630"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f9045f44b506396f73ee047de2d40630"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f9045f44b506396f73ee047de2d40630"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f9045f44b506396f73ee047de2d40630"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Successfully set up experiment","requestID":"f9045f44b506396f73ee047de2d40630"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11790e50-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.930137,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"11790e50-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173849,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"11790e50-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.776880018Z"}]},"request_id":"e8db11da-d69c-4d85-a7f1-9f11dd512f12","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.0736723} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11790e50-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7? 200 42ms","method":"GET","requestID":"11790e50-7a60-11ef-8bac-49f2f0d74a99","responseTime":42,"status":200,"url":"/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 33ms","method":"POST","requestID":"11790e50-7a60-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"11803a40-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1180af70-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.985207,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"11803a40-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173849,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Successfully running experiment","requestID":"f9045f44b506396f73ee047de2d40630"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"11803a40-7a60-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.810368,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"45d89420-7ffd-48be-8df7-0518491194b2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.1305516} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.915988005Z"}]},"request_id":"51918b17-98cf-47ca-8773-e3b412642460","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.1370018} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1180af70-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","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":"1180af70-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/signaling 200 84ms","method":"POST","requestID":"1180af70-7a60-11ef-8bac-49f2f0d74a99","responseTime":84,"status":200,"url":"/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 49ms","method":"POST","requestID":"1180af70-7a60-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 40ms","method":"POST","requestID":"11803a40-7a60-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"118e4400-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f3ad8e70-ef94-4e20-aaff-a0c219f17faa","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.185684} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.712607,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:50Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"11803a40-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf? 200 105ms","method":"GET","requestID":"11803a40-7a60-11ef-8bac-49f2f0d74a99","responseTime":105,"status":200,"url":"/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11945e80-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"118e4400-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 53ms","method":"POST","requestID":"118e4400-7a60-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"118e4400-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/signaling 200 61ms","method":"POST","requestID":"118e4400-7a60-11ef-8bac-49f2f0d74a99","responseTime":61,"status":200,"url":"/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/signaling"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54e5d95a-a011-4c23-853e-88a71aa84cb9#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54e5d95a-a011-4c23-853e-88a71aa84cb9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"a61fc6e6-1bd9-4690-ab1b-4b964f4ce69f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.264204} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b0bc0f44-5305-47dc-b531-3d393b9a1103","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.2656565} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8abd9dff-41a5-455e-919d-9bd3cc635c32","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.267486} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":33.591724,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 142ms","method":"POST","requestID":"f9045f44b506396f73ee047de2d40630","responseTime":142,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f9045f44b506396f73ee047de2d40630"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"11945e80-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","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":"24/Sep/2024:10:30:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.730","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f9045f44b506396f73ee047de2d40630"} experiment-1 | {"level":"info","message":"POST /experiments? 201 724ms","method":"POST","requestID":"f9045f44b506396f73ee047de2d40630","responseTime":724,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 50ms","method":"POST","requestID":"11945e80-7a60-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1MH0.PT0S62n-HccHWOijXCVPBAaIe9oMcUD9tRBV367TdSM","level":"info","message":"auth send jwt","requestID":"bdda5ccaefad9f56eab295c7e5a7d401"} authentication-1 | {"level":"info","message":"GET /auth 200 30ms","method":"GET","requestID":"bdda5ccaefad9f56eab295c7e5a7d401","responseTime":30,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11945e80-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/signaling 200 98ms","method":"POST","requestID":"11945e80-7a60-11ef-8bac-49f2f0d74a99","responseTime":98,"status":200,"url":"/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bdda5ccaefad9f56eab295c7e5a7d401"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11a3a0c0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"client_addr":"127.0.0.1:40508","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.2344,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"bdda5ccaefad9f56eab295c7e5a7d401","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173850,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1MH0.PT0S62n-HccHWOijXCVPBAaIe9oMcUD9tRBV367TdSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bdda5ccaefad9f56eab295c7e5a7d401","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.776880018Z"}]},"request_id":"222e5d8b-2a80-404f-800c-b1455236d084","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.3249197} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bdda5ccaefad9f56eab295c7e5a7d401","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"979d0451-26d7-4b74-aa44-2b0921d2b1f0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.327379} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.471365,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"11a3a0c0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","object_type":"device","rebac_allow":false,"scope_allow":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":"11a3a0c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bdda5ccaefad9f56eab295c7e5a7d401"} gateway-1 | {"time_local":"24/Sep/2024:10:30:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bdda5ccaefad9f56eab295c7e5a7d401"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1MH0.PT0S62n-HccHWOijXCVPBAaIe9oMcUD9tRBV367TdSM","level":"info","message":"auth send jwt","requestID":"5dd44836578e501d910157c70b2ce49c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5dd44836578e501d910157c70b2ce49c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7? 200 32ms","method":"GET","requestID":"bdda5ccaefad9f56eab295c7e5a7d401","responseTime":32,"status":200,"url":"/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5dd44836578e501d910157c70b2ce49c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11a3a0c0-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f9045f44b506396f73ee047de2d40630"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Building connection plan","requestID":"f9045f44b506396f73ee047de2d40630"} 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":"e38b6e38-bd34-4ea0-99e2-3cb61864d3e1"},{"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":"b62ccd07-4c5d-4a73-a621-0728da85db66"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"b9d06081-b8c8-4ec2-85ac-6783f5d442f3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f9045f44b506396f73ee047de2d40630"} 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/9d9528b4-0817-45e8-b5f6-e9720edf18cf"},{"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/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f9045f44b506396f73ee047de2d40630"} device-1 | {"level":"info","message":"POST /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/signaling 200 67ms","method":"POST","requestID":"11a3a0c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":67,"status":200,"url":"/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"11ae0100-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.908184,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5dd44836578e501d910157c70b2ce49c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173850,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1MH0.PT0S62n-HccHWOijXCVPBAaIe9oMcUD9tRBV367TdSM"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"5dd44836578e501d910157c70b2ce49c","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":30.320492,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"11ae0100-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173849,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg0OX0.xyZBiJ0qqepUJAJo-dgA1XlI0OOrx58Olxlq0bzOj0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 38ms","method":"POST","requestID":"11ae0100-7a60-11ef-8bac-49f2f0d74a99","responseTime":38,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:45.915988005Z"}]},"request_id":"024ff14c-9947-472f-a918-766b0da9e109","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.4291184} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"5dd44836578e501d910157c70b2ce49c","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5dd44836578e501d910157c70b2ce49c"} gateway-1 | {"time_local":"24/Sep/2024:10:30:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.098","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5dd44836578e501d910157c70b2ce49c"} device-1 | {"level":"info","message":"GET /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf? 200 65ms","method":"GET","requestID":"5dd44836578e501d910157c70b2ce49c","responseTime":65,"status":200,"url":"/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"04eeb152-5469-41ed-8d14-a657b8cf5e07","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.445582} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"016cb501-76b3-46a9-af54-b85b70ebc212","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.4463453} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"11ae0100-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"11ae0100-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"11ae0100-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08'","requestID":"11ae0100-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08'","requestID":"11ae0100-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"11ae0100-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 153ms","method":"POST","requestID":"11ae0100-7a60-11ef-8bac-49f2f0d74a99","responseTime":153,"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":"11ae0100-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08","device":"700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","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/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f9045f44b506396f73ee047de2d40630"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11d733e0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":28.705737,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a5310b29-ee07-4ab5-a245-46d3d5cdcb94","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.6853347} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"11d733e0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"11d733e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11d733e0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/signaling 200 85ms","method":"POST","requestID":"11d733e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":85,"status":200,"url":"/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/signaling"} device-1 | {"device":"700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"11e47a50-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.195777,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:50Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d1dba17f-3a56-4341-aa02-fda43ae48184","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173850.7469025} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"11e47a50-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","object_type":"device","rebac_allow":false,"scope_allow":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":"11e47a50-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 6316176457555236563 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:tElz\r\na=ice-pwd:Po9MuQyhwYvaqino9edh1/Nn\r\na=ice-options:trickle\r\na=fingerprint:sha-256 62:1A:4F:D9:6B:45:D9:41:7B:CD:41:53:8D:12:89:D5:5D:4E:FC:36:9D:C6:A2:29:80:AB:68:FB:83:BF:0B:B2\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7'"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"11e47a50-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/signaling 200 62ms","method":"POST","requestID":"11e47a50-7a60-11ef-8bac-49f2f0d74a99","responseTime":62,"status":200,"url":"/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/signaling"} device-1 | {"device":"9d9528b4-0817-45e8-b5f6-e9720edf18cf","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 | {"device":"9d9528b4-0817-45e8-b5f6-e9720edf18cf","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":"9d9528b4-0817-45e8-b5f6-e9720edf18cf","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 | {"data":{"peerconnection":"f00e326b-2372-47eb-8a87-186ea2672e08","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"af7d490aae9eaf0f6b92c717e013b8cf","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":"9d9528b4-0817-45e8-b5f6-e9720edf18cf","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":"9d9528b4-0817-45e8-b5f6-e9720edf18cf","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/f00e326b-2372-47eb-8a87-186ea2672e08' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f00e326b-2372-47eb-8a87-186ea2672e08","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} 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/9d9528b4-0817-45e8-b5f6-e9720edf18cf"},{"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/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08"}}},"level":"info","message":"received a callback","requestID":"af7d490aae9eaf0f6b92c717e013b8cf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"af7d490aae9eaf0f6b92c717e013b8cf","responseTime":36,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"af7d490aae9eaf0f6b92c717e013b8cf","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"af7d490aae9eaf0f6b92c717e013b8cf"} device-1 | {"content":{"candidate":"candidate:2824994285 1 udp 2113937151 fca2d159-743d-4ef8-9871-c3fe50069ed9.local 45188 typ host generation 0 ufrag tElz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:994729214 1 udp 1677729535 141.24.211.56 45188 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag tElz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2238113548 1 udp 33562623 141.24.210.113 51469 typ relay raddr 141.24.211.56 rport 45188 generation 0 ufrag tElz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","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/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7'"} device-1 | {"device":"700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","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/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7'"} device-1 | {"data":{"peerconnection":"f00e326b-2372-47eb-8a87-186ea2672e08","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"9d9528b4-0817-45e8-b5f6-e9720edf18cf","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":"700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"f00e326b-2372-47eb-8a87-186ea2672e08","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9d9528b4-0817-45e8-b5f6-e9720edf18cf","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 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f00e326b-2372-47eb-8a87-186ea2672e08","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e101221e9b29f424e02a9da191c81522","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":"e101221e9b29f424e02a9da191c81522","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/9d9528b4-0817-45e8-b5f6-e9720edf18cf"},{"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/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08"}}},"level":"info","message":"received a callback","requestID":"e101221e9b29f424e02a9da191c81522"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"13398300-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:52Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.583422,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:52Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff00e326b-2372-47eb-8a87-186ea2672e08","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3a15762d-12f0-4b22-8d5c-a624f6c1bca4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173852.9823203} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"13398300-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08","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":"13398300-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"13398300-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08 200 13ms","method":"GET","requestID":"13398300-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9","requestID":"c4ac6df6519997abc68c9dca6c5f55f9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1M30.ufu6sZzudJ-qJuw5T7fqVsmOUMcSmSBuABiuZ4TShbo","level":"info","message":"auth send jwt","requestID":"c4ac6df6519997abc68c9dca6c5f55f9"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.962749,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c4ac6df6519997abc68c9dca6c5f55f9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173853,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1M30.ufu6sZzudJ-qJuw5T7fqVsmOUMcSmSBuABiuZ4TShbo"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"c4ac6df6519997abc68c9dca6c5f55f9","responseTime":28,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c4ac6df6519997abc68c9dca6c5f55f9","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 209ms","method":"POST","requestID":"e101221e9b29f424e02a9da191c81522","responseTime":209,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13539ab0-7a60-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:30:53 +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.218","http_referrer":"","http_user_agent":"node-fetch","requestID":"e101221e9b29f424e02a9da191c81522"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"083e9fa4-0a3f-4c71-950f-6581519486e6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.1556401} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":29.527176,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"13539ab0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"13539ab0-7a60-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"13539ab0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/signaling 200 41ms","method":"POST","requestID":"13539ab0-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9","requestID":"c4ac6df6519997abc68c9dca6c5f55f9"} experiment-1 | {"level":"info","message":"GET /experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9 200 112ms","method":"GET","requestID":"c4ac6df6519997abc68c9dca6c5f55f9","responseTime":112,"status":200,"url":"/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"} gateway-1 | {"time_local":"24/Sep/2024:10:30:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4ac6df6519997abc68c9dca6c5f55f9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"135a9f90-7a60-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1M30.ufu6sZzudJ-qJuw5T7fqVsmOUMcSmSBuABiuZ4TShbo","level":"info","message":"auth send jwt","requestID":"10ca89fc9e710fd1140e3da14d3eb72e"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"10ca89fc9e710fd1140e3da14d3eb72e","responseTime":7,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.739673,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"832a7cfd-8712-445b-bd34-2724d587a22a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.1991675} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"135a9f90-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"135a9f90-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9","requestID":"10ca89fc9e710fd1140e3da14d3eb72e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"135a9f90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/signaling 200 49ms","method":"POST","requestID":"135a9f90-7a60-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/signaling"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.993327,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"10ca89fc9e710fd1140e3da14d3eb72e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173853,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1M30.ufu6sZzudJ-qJuw5T7fqVsmOUMcSmSBuABiuZ4TShbo"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"10ca89fc9e710fd1140e3da14d3eb72e","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Attempting to finish experiment","requestID":"10ca89fc9e710fd1140e3da14d3eb72e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"136bdda0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":28.258954,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"136bdda0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173853,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1M30.ufu6sZzudJ-qJuw5T7fqVsmOUMcSmSBuABiuZ4TShbo"} authorization-1 | {"level":"info","message":"POST /authorize 200 36ms","method":"POST","requestID":"136bdda0-7a60-11ef-8bac-49f2f0d74a99","responseTime":36,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08","device":"700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"9d9528b4-0817-45e8-b5f6-e9720edf18cf","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":"9d9528b4-0817-45e8-b5f6-e9720edf18cf","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":"9d9528b4-0817-45e8-b5f6-e9720edf18cf","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"}} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff00e326b-2372-47eb-8a87-186ea2672e08': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff00e326b-2372-47eb-8a87-186ea2672e08","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"25b670ca-b626-4198-9067-4c408c328d86","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.36092} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1fb16161-2ece-43a8-8dcd-3ab63274acea","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.3615773} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f00e326b-2372-47eb-8a87-186ea2672e08","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"136bdda0-7a60-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bf81c78b9b118441bb65a382a1d45f8a","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":"bf81c78b9b118441bb65a382a1d45f8a","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f2925b178d2bf210224fcc8241000e96","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 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"136bdda0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08 204 66ms","method":"DELETE","requestID":"136bdda0-7a60-11ef-8bac-49f2f0d74a99","responseTime":66,"status":204,"url":"/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f2925b178d2bf210224fcc8241000e96","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/9d9528b4-0817-45e8-b5f6-e9720edf18cf"},{"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/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08"}}},"level":"info","message":"received a callback","requestID":"bf81c78b9b118441bb65a382a1d45f8a"} 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/9d9528b4-0817-45e8-b5f6-e9720edf18cf"},{"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/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f00e326b-2372-47eb-8a87-186ea2672e08"}}},"level":"info","message":"received a callback","requestID":"f2925b178d2bf210224fcc8241000e96"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"},"level":"info","message":"Successfully finished experiment","requestID":"10ca89fc9e710fd1140e3da14d3eb72e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"137b9510-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d9528b4-0817-45e8-b5f6-e9720edf18cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"89d92f9c-9527-4650-b1e5-3be8cbfc3d90","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.4155073} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.681469,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"137b9510-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf","object_type":"device","rebac_allow":false,"scope_allow":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":"137b9510-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54e5d95a-a011-4c23-853e-88a71aa84cb9': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54e5d95a-a011-4c23-853e-88a71aa84cb9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"4eef8cc5-ed88-4e42-858a-d4938b68f09f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.4472473} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"04d4d063-9031-4084-829d-410323377d95","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.4487035} authorization-1 | {"level":"info","message":"POST /relations/update 200 46ms","method":"POST","requestID":"10ca89fc9e710fd1140e3da14d3eb72e","responseTime":47,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"137b9510-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/signaling 200 47ms","method":"POST","requestID":"137b9510-7a60-11ef-8bac-49f2f0d74a99","responseTime":47,"status":200,"url":"/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13833630-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6707b4a5-c2ab-48cf-a3ef-89fe0a8ee7ec","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.4641426} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.425809,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"13833630-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7","object_type":"device","rebac_allow":false,"scope_allow":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":"13833630-7a60-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"13833630-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/signaling 200 18ms","method":"POST","requestID":"13833630-7a60-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9","requestID":"10ca89fc9e710fd1140e3da14d3eb72e"} gateway-1 | {"time_local":"24/Sep/2024:10:30:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.436","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"10ca89fc9e710fd1140e3da14d3eb72e"} experiment-1 | {"level":"info","message":"DELETE /experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9 204 426ms","method":"DELETE","requestID":"10ca89fc9e710fd1140e3da14d3eb72e","responseTime":426,"status":204,"url":"/experiments/54e5d95a-a011-4c23-853e-88a71aa84cb9"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/700dc2ea-2a0b-4594-bd1e-43b95ad1b7d7' closed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 264ms","method":"POST","requestID":"bf81c78b9b118441bb65a382a1d45f8a","responseTime":264,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 256ms","method":"POST","requestID":"f2925b178d2bf210224fcc8241000e96","responseTime":256,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:30:53 +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.269","http_referrer":"","http_user_agent":"node-fetch","requestID":"bf81c78b9b118441bb65a382a1d45f8a"} gateway-1 | {"time_local":"24/Sep/2024:10:30:53 +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.269","http_referrer":"","http_user_agent":"node-fetch","requestID":"f2925b178d2bf210224fcc8241000e96"} gateway-1 | {"time_local":"24/Sep/2024:10:30:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2708","request_time":"4.286","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":"85bcb159f4d4ed41c2620d3a4a702d2f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1M30.ufu6sZzudJ-qJuw5T7fqVsmOUMcSmSBuABiuZ4TShbo","level":"info","message":"auth send jwt","requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3191","request_time":"5.517","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c1b22bacdf691d46904a6f3bf3c2e71d"} device-1 | {"level":"info","message":"postDevices called","requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.923856,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173853,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1M30.ufu6sZzudJ-qJuw5T7fqVsmOUMcSmSBuABiuZ4TShbo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"66e232f6-40c9-40ea-a6fb-cb8f866d03ee","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.7148602} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4","responseTime":9,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e4a28eaf-4964-4dfe-9a70-8cdf05c2ef8b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.7480044} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9d9528b4-0817-45e8-b5f6-e9720edf18cf' closed"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"843a7865-9e32-4337-9cbf-475516b56a1f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.8216696} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3115886b-4d3c-4437-99d4-d08854c6088f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.8223052} authorization-1 | {"level":"info","message":"POST /relations/update 200 79ms","method":"POST","requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4","responseTime":80,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:53.821631535Z"}]},"request_id":"7cf77bc5-f29e-429d-a86c-f9067149f318","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.83652} gateway-1 | {"time_local":"24/Sep/2024:10:30:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.181","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4"} device-1 | {"level":"info","message":"POST /devices? 201 175ms","method":"POST","requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4","responseTime":175,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 38ms","method":"POST","requestID":"be0a6c14957bcbff3b7cc3883b4b6fe4","responseTime":38,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1M30.ufu6sZzudJ-qJuw5T7fqVsmOUMcSmSBuABiuZ4TShbo","level":"info","message":"auth send jwt","requestID":"80add0567cdaaecdd6ea030665eb56bf"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"80add0567cdaaecdd6ea030665eb56bf","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"80add0567cdaaecdd6ea030665eb56bf"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.981049,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"80add0567cdaaecdd6ea030665eb56bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173853,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1M30.ufu6sZzudJ-qJuw5T7fqVsmOUMcSmSBuABiuZ4TShbo"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"80add0567cdaaecdd6ea030665eb56bf","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f6c9568f-7160-4ec1-aa39-f58d2606fa99","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.9585366} authorization-1 | {"level":"info","message":"POST /relations/query 200 28ms","method":"POST","requestID":"80add0567cdaaecdd6ea030665eb56bf","responseTime":28,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d115dc30-7f92-425a-a079-42b60b20e3a6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173853.9899435} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"80add0567cdaaecdd6ea030665eb56bf","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"4d224825-b670-4270-9a5e-4026dc50fae7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173854.0077288} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92b455b1-d1e1-4e91-9a63-657ebebd1f15","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173854.0090466} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"80add0567cdaaecdd6ea030665eb56bf","responseTime":22,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:54.007693707Z"}]},"request_id":"ed3b3358-2ae4-4cc4-a33c-44e930ac1931","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173854.0160353} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"80add0567cdaaecdd6ea030665eb56bf"} device-1 | {"level":"info","message":"POST /devices? 201 142ms","method":"POST","requestID":"80add0567cdaaecdd6ea030665eb56bf","responseTime":142,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:30: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.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"80add0567cdaaecdd6ea030665eb56bf"} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"80add0567cdaaecdd6ea030665eb56bf","responseTime":31,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:55Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.023941,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a338015836aa12c896e91e431f799bc3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173855,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1NX0.CF-DH6dwOA3junGyVNeD-m3qERFD37XXDWRhO6GRgv4"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"a338015836aa12c896e91e431f799bc3","responseTime":34,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a338015836aa12c896e91e431f799bc3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1NX0.CF-DH6dwOA3junGyVNeD-m3qERFD37XXDWRhO6GRgv4","level":"info","message":"auth send jwt","requestID":"a338015836aa12c896e91e431f799bc3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a338015836aa12c896e91e431f799bc3","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:54.007693707Z"}]},"request_id":"30ec3302-0179-4ae6-8715-3281a456fe07","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173855.9941144} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a338015836aa12c896e91e431f799bc3","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0b566122-1e7b-4b6e-821b-a18afab8534e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173856.0037327} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"a338015836aa12c896e91e431f799bc3","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:54.007693707Z"}]},"request_id":"c51c8566-b137-410e-bbd0-ec10432ac42f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173856.0592742} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a338015836aa12c896e91e431f799bc3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a338015836aa12c896e91e431f799bc3"} gateway-1 | {"time_local":"24/Sep/2024:10:30:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.118","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a338015836aa12c896e91e431f799bc3"} device-1 | {"level":"info","message":"PATCH /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f 200 139ms","method":"PATCH","requestID":"a338015836aa12c896e91e431f799bc3","responseTime":139,"status":200,"url":"/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1Nn0.5Jx-cQBR3fDF6gIKK3oZ0gsGydN962CAV-CDTBOlLv4","level":"info","message":"auth send jwt","requestID":"5ed55a7cf5c0940bb1d483bd354b8479"} authentication-1 | {"level":"info","message":"GET /auth 200 39ms","method":"GET","requestID":"5ed55a7cf5c0940bb1d483bd354b8479","responseTime":39,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5ed55a7cf5c0940bb1d483bd354b8479"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:56Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.901114,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5ed55a7cf5c0940bb1d483bd354b8479","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173856,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1Nn0.5Jx-cQBR3fDF6gIKK3oZ0gsGydN962CAV-CDTBOlLv4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5ed55a7cf5c0940bb1d483bd354b8479","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5ed55a7cf5c0940bb1d483bd354b8479"} gateway-1 | {"time_local":"24/Sep/2024:10:30:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.098","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5ed55a7cf5c0940bb1d483bd354b8479"} device-1 | {"level":"info","message":"POST /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/websocket 200 59ms","method":"POST","requestID":"5ed55a7cf5c0940bb1d483bd354b8479","responseTime":59,"status":200,"url":"/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"790039d08f11115309ea629fb95fa688","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":"790039d08f11115309ea629fb95fa688","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:30:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4b504cd4-6c89-43d2-8616-e787e92d8207/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":"790039d08f11115309ea629fb95fa688"} device-1 | {"level":"info","message":"OPTIONS /devices/4b504cd4-6c89-43d2-8616-e787e92d8207/websocket 200 6ms","method":"OPTIONS","requestID":"790039d08f11115309ea629fb95fa688","responseTime":6,"status":200,"url":"/devices/4b504cd4-6c89-43d2-8616-e787e92d8207/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg","level":"info","message":"auth send jwt","requestID":"65e25d8fc9003b6363db37dcd8401019"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"65e25d8fc9003b6363db37dcd8401019","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"65e25d8fc9003b6363db37dcd8401019"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":26.511293,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"65e25d8fc9003b6363db37dcd8401019","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173857,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"65e25d8fc9003b6363db37dcd8401019","responseTime":30,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"65e25d8fc9003b6363db37dcd8401019"} gateway-1 | {"time_local":"24/Sep/2024:10:30:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4b504cd4-6c89-43d2-8616-e787e92d8207/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.114","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":"65e25d8fc9003b6363db37dcd8401019"} device-1 | {"level":"info","message":"POST /devices/4b504cd4-6c89-43d2-8616-e787e92d8207/websocket 200 111ms","method":"POST","requestID":"65e25d8fc9003b6363db37dcd8401019","responseTime":111,"status":200,"url":"/devices/4b504cd4-6c89-43d2-8616-e787e92d8207/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg","level":"info","message":"auth send jwt","requestID":"c0937bbaf95cd478666cd8d5d1d96e50"} authentication-1 | {"level":"info","message":"GET /auth 200 10ms","method":"GET","requestID":"c0937bbaf95cd478666cd8d5d1d96e50","responseTime":10,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c0937bbaf95cd478666cd8d5d1d96e50"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.013434,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c0937bbaf95cd478666cd8d5d1d96e50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173857,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c0937bbaf95cd478666cd8d5d1d96e50","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:53.821631535Z"}]},"request_id":"85342123-827e-4d25-936f-4a48e8075d53","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173857.5352705} authorization-1 | {"level":"info","message":"POST /relations/query 200 27ms","method":"POST","requestID":"c0937bbaf95cd478666cd8d5d1d96e50","responseTime":27,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c0937bbaf95cd478666cd8d5d1d96e50"} device-1 | {"level":"info","message":"GET /devices/4b504cd4-6c89-43d2-8616-e787e92d8207? 200 39ms","method":"GET","requestID":"c0937bbaf95cd478666cd8d5d1d96e50","responseTime":39,"status":200,"url":"/devices/4b504cd4-6c89-43d2-8616-e787e92d8207?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4b504cd4-6c89-43d2-8616-e787e92d8207? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.079","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c0937bbaf95cd478666cd8d5d1d96e50"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg","level":"info","message":"auth send jwt","requestID":"378057987addbe4ce567996931c3fc87"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"378057987addbe4ce567996931c3fc87","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"378057987addbe4ce567996931c3fc87"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.025082,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"378057987addbe4ce567996931c3fc87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173857,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"378057987addbe4ce567996931c3fc87","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:54.007693707Z"}]},"request_id":"6f4b3f8b-a4de-45c6-b71f-c1ea5bf8ac2a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173857.5818992} authorization-1 | {"level":"info","message":"POST /relations/query 200 37ms","method":"POST","requestID":"378057987addbe4ce567996931c3fc87","responseTime":37,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"378057987addbe4ce567996931c3fc87"} gateway-1 | {"time_local":"24/Sep/2024:10:30:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"378057987addbe4ce567996931c3fc87"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg","level":"info","message":"auth send jwt","requestID":"015c547df6bb2bebc86d3b56989b4024"} authentication-1 | {"level":"info","message":"GET /auth 200 37ms","method":"GET","requestID":"015c547df6bb2bebc86d3b56989b4024","responseTime":37,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f? 200 93ms","method":"GET","requestID":"378057987addbe4ce567996931c3fc87","responseTime":93,"status":200,"url":"/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f?"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"015c547df6bb2bebc86d3b56989b4024"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.914308,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"015c547df6bb2bebc86d3b56989b4024","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173857,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"015c547df6bb2bebc86d3b56989b4024","responseTime":34,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Attempting to run experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Attempting to book experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Successfully booked experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16229930-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1622e750-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.091582,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"16229930-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173857,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"16229930-7a60-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1622e750-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173857,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 39ms","method":"POST","requestID":"1622e750-7a60-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.146023,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:57Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:53.821631535Z"}]},"request_id":"9d5f472b-33c6-48c8-9a21-0ebe1f8e0570","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173857.9002762} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16229930-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4b504cd4-6c89-43d2-8616-e787e92d8207? 200 50ms","method":"GET","requestID":"16229930-7a60-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/devices/4b504cd4-6c89-43d2-8616-e787e92d8207?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"16229930-7a60-11ef-8bac-49f2f0d74a99","responseTime":14,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:54.007693707Z"}]},"request_id":"07407c67-31e6-40d8-9c25-b50f53d28905","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173857.915518} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1622e750-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f? 200 84ms","method":"GET","requestID":"1622e750-7a60-11ef-8bac-49f2f0d74a99","responseTime":84,"status":200,"url":"/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Setting up experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} authorization-1 | {"level":"info","message":"POST /relations/query 200 37ms","method":"POST","requestID":"1622e750-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Successfully locked booking for experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Attempting to update booking for experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Successfully updated booking for experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Successfully set up experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"165da660-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Successfully running experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"165eb7d0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.934277,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.738979,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"165eb7d0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173857,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1664ab40-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"165eb7d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"165da660-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173857,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"165da660-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":32.963255,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"441b5d08-27f0-4ca5-b531-0ae4ab2b1578","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.299705} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:53.821631535Z"}]},"request_id":"cfd4611c-ab00-44a2-8707-324b2fec6496","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.3335762} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1664ab40-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","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":"1664ab40-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b504cd4-6c89-43d2-8616-e787e92d8207/signaling 200 56ms","method":"POST","requestID":"1664ab40-7a60-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/devices/4b504cd4-6c89-43d2-8616-e787e92d8207/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 53ms","method":"POST","requestID":"1664ab40-7a60-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16723fd0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F59a94447-bde2-4f48-abcc-120346ea8599#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F59a94447-bde2-4f48-abcc-120346ea8599","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"03a15c8e-d6c4-4968-8ace-52c03b20c677","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.3378868} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7fc025b4-a9c9-4bf2-ad01-3d783cc21e4e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.3392744} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:54.007693707Z"}]},"request_id":"9fff670d-9b8e-4e7f-b5e5-cf3e3196914e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.3884735} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"165da660-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4b504cd4-6c89-43d2-8616-e787e92d8207? 200 149ms","method":"GET","requestID":"165da660-7a60-11ef-8bac-49f2f0d74a99","responseTime":149,"status":200,"url":"/devices/4b504cd4-6c89-43d2-8616-e787e92d8207?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 65ms","method":"POST","requestID":"165da660-7a60-11ef-8bac-49f2f0d74a99","responseTime":65,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/update 200 145ms","method":"POST","requestID":"015c547df6bb2bebc86d3b56989b4024","responseTime":145,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"165eb7d0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f? 200 180ms","method":"GET","requestID":"165eb7d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":180,"status":200,"url":"/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f?"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"015c547df6bb2bebc86d3b56989b4024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"167af260-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"POST /experiments? 201 776ms","method":"POST","requestID":"015c547df6bb2bebc86d3b56989b4024","responseTime":776,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 56ms","method":"POST","requestID":"165eb7d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":56,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:30:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.815","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"015c547df6bb2bebc86d3b56989b4024"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e598485-1728-42ff-93ba-dae1d7190806","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.4269705} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.605173,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"16723fd0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1OH0.UiTV7ZL8IjLOyRDcxu-_P4nEcA8m3HwFa2JoH7jjERQ","level":"info","message":"auth send jwt","requestID":"ce8520cabaa279a145bc04687a89e6ee"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"ce8520cabaa279a145bc04687a89e6ee","responseTime":29,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce8520cabaa279a145bc04687a89e6ee"} authorization-1 | {"level":"info","message":"POST /authorize 200 77ms","method":"POST","requestID":"16723fd0-7a60-11ef-8bac-49f2f0d74a99","responseTime":77,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16723fd0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/signaling 200 97ms","method":"POST","requestID":"16723fd0-7a60-11ef-8bac-49f2f0d74a99","responseTime":97,"status":200,"url":"/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"client_addr":"127.0.0.1:40516","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.012562,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.824945,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"616fbe9a-3c49-4c8a-8a94-d0899299574a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.4822257} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ce8520cabaa279a145bc04687a89e6ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173858,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1OH0.UiTV7ZL8IjLOyRDcxu-_P4nEcA8m3HwFa2JoH7jjERQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ce8520cabaa279a145bc04687a89e6ee","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"167af260-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","object_type":"device","rebac_allow":false,"scope_allow":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":"167af260-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:53.821631535Z"}]},"request_id":"8151d746-e12d-442d-9e51-957bd176507d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.4927108} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ce8520cabaa279a145bc04687a89e6ee","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"167af260-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b504cd4-6c89-43d2-8616-e787e92d8207/signaling 200 140ms","method":"POST","requestID":"167af260-7a60-11ef-8bac-49f2f0d74a99","responseTime":140,"status":200,"url":"/devices/4b504cd4-6c89-43d2-8616-e787e92d8207/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce8520cabaa279a145bc04687a89e6ee"} gateway-1 | {"time_local":"24/Sep/2024:10:30:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4b504cd4-6c89-43d2-8616-e787e92d8207? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ce8520cabaa279a145bc04687a89e6ee"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1OH0.UiTV7ZL8IjLOyRDcxu-_P4nEcA8m3HwFa2JoH7jjERQ","level":"info","message":"auth send jwt","requestID":"8dde36dc3f27c3160e2c66a7c67d4f1a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8dde36dc3f27c3160e2c66a7c67d4f1a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/4b504cd4-6c89-43d2-8616-e787e92d8207? 200 114ms","method":"GET","requestID":"ce8520cabaa279a145bc04687a89e6ee","responseTime":114,"status":200,"url":"/devices/4b504cd4-6c89-43d2-8616-e787e92d8207?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1691fcd0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.374621,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a564d0a-b32f-4de1-ba69-178298473d5b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.619381} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1691fcd0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"1691fcd0-7a60-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8dde36dc3f27c3160e2c66a7c67d4f1a"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.355929,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"8dde36dc3f27c3160e2c66a7c67d4f1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173858,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1OH0.UiTV7ZL8IjLOyRDcxu-_P4nEcA8m3HwFa2JoH7jjERQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8dde36dc3f27c3160e2c66a7c67d4f1a","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:30:54.007693707Z"}]},"request_id":"ac1c2517-c452-4f46-9377-65dc6b40e22a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.6667283} authorization-1 | {"level":"info","message":"POST /relations/query 200 41ms","method":"POST","requestID":"8dde36dc3f27c3160e2c66a7c67d4f1a","responseTime":41,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1691fcd0-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Building connection plan","requestID":"015c547df6bb2bebc86d3b56989b4024"} 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":"4284ae93-cdb6-4efe-afde-7dc56f8850aa"},{"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":"f6a531d2-066d-4fc0-8c0c-8a2d581c9960"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"daf8946e-fbb0-4b58-a82f-4d07c3c171d0"}]},"level":"info","message":"Built pairwise service configurations","requestID":"015c547df6bb2bebc86d3b56989b4024"} 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/4b504cd4-6c89-43d2-8616-e787e92d8207"},{"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/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"015c547df6bb2bebc86d3b56989b4024"} device-1 | {"level":"info","message":"POST /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/signaling 200 127ms","method":"POST","requestID":"1691fcd0-7a60-11ef-8bac-49f2f0d74a99","responseTime":127,"status":200,"url":"/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"16a64820-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.986894,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"16a64820-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173857,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg1N30.GH2CMVUxMyKzhlFRMweuJCVg5-Yr28m9QxkmNjmG_Kg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"16a64820-7a60-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8dde36dc3f27c3160e2c66a7c67d4f1a"} device-1 | {"level":"info","message":"GET /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f? 200 107ms","method":"GET","requestID":"8dde36dc3f27c3160e2c66a7c67d4f1a","responseTime":107,"status":200,"url":"/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f?"} gateway-1 | {"time_local":"24/Sep/2024:10:30:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8dde36dc3f27c3160e2c66a7c67d4f1a"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"94b976cd-b08d-45fd-870d-01fb5fb5509c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.7725828} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d04afba8-2328-4036-a679-6312a8230a50","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173858.7735412} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"16a64820-7a60-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"16a64820-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"16a64820-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4'","requestID":"16a64820-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4'","requestID":"16a64820-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"16a64820-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 138ms","method":"POST","requestID":"16a64820-7a60-11ef-8bac-49f2f0d74a99","responseTime":138,"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":"16a64820-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4","device":"4b504cd4-6c89-43d2-8616-e787e92d8207","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} device-1 | {"device":"4b504cd4-6c89-43d2-8616-e787e92d8207","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"4b504cd4-6c89-43d2-8616-e787e92d8207","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"015c547df6bb2bebc86d3b56989b4024"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16e23fb0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:59Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0ef1262-d255-40d7-a22a-a1ffc2dfaf82","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173859.1446798} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.300325,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"16e23fb0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"16e23fb0-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16e23fb0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b504cd4-6c89-43d2-8616-e787e92d8207/signaling 200 35ms","method":"POST","requestID":"16e23fb0-7a60-11ef-8bac-49f2f0d74a99","responseTime":35,"status":200,"url":"/devices/4b504cd4-6c89-43d2-8616-e787e92d8207/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16e9e0d0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:30:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.607561,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:30:59Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3dbfa0f4-7d50-4a0f-b921-794c2be388b4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173859.1953785} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"16e9e0d0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","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":"16e9e0d0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/signaling 200 39ms","method":"POST","requestID":"16e9e0d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"16e9e0d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/authorize"} device-1 | {"device":"663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","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":"95e7b45c-b1f1-4c77-971c-06996f34f9d4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 5816495102630814375 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:2ii+\r\na=ice-pwd:I82M/EoADhVoP+tBddnFdiKF\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C8:CD:FB:88:08:7F:F2:DF:1C:B9:D8:CB:4B:B4:79:08:63:5A:0D:B6:4F:2C:C3:01:36:D4:2A:E9:DC:0A:33:17\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"4b504cd4-6c89-43d2-8616-e787e92d8207","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","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":"663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","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":"663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","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/95e7b45c-b1f1-4c77-971c-06996f34f9d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"95e7b45c-b1f1-4c77-971c-06996f34f9d4","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"121f603ffb99a0e0f42d9a1d0a45f94f","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":"121f603ffb99a0e0f42d9a1d0a45f94f","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":"new","url":"http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207"},{"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/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4"}}},"level":"info","message":"received a callback","requestID":"121f603ffb99a0e0f42d9a1d0a45f94f"} gateway-1 | {"time_local":"24/Sep/2024:10:31:01 +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":"121f603ffb99a0e0f42d9a1d0a45f94f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 21ms","method":"POST","requestID":"121f603ffb99a0e0f42d9a1d0a45f94f","responseTime":21,"status":200,"url":"/callbacks/experiment"} device-1 | {"content":{"candidate":"candidate:767303680 1 udp 2113937151 7e2eda1d-8a59-4f51-8765-dfb561b05ad9.local 56379 typ host generation 0 ufrag 2ii+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4b504cd4-6c89-43d2-8616-e787e92d8207","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"4b504cd4-6c89-43d2-8616-e787e92d8207","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"95e7b45c-b1f1-4c77-971c-06996f34f9d4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:3197600019 1 udp 1677729535 141.24.211.56 56379 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 2ii+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4b504cd4-6c89-43d2-8616-e787e92d8207","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"4b504cd4-6c89-43d2-8616-e787e92d8207","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","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":"4b504cd4-6c89-43d2-8616-e787e92d8207","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"95e7b45c-b1f1-4c77-971c-06996f34f9d4","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","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 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"95e7b45c-b1f1-4c77-971c-06996f34f9d4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"875f7d969c8856240641b67181ff271f","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":"875f7d969c8856240641b67181ff271f","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/4b504cd4-6c89-43d2-8616-e787e92d8207"},{"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/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4"}}},"level":"info","message":"received a callback","requestID":"875f7d969c8856240641b67181ff271f"} device-1 | {"device":"4b504cd4-6c89-43d2-8616-e787e92d8207","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"182b6180-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F95e7b45c-b1f1-4c77-971c-06996f34f9d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4659c03-a24e-4d5d-8607-f6cae7440275","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173861.279653} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":27.445755,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"182b6180-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4","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 31ms","method":"POST","requestID":"182b6180-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"182b6180-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4 200 38ms","method":"GET","requestID":"182b6180-7a60-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 111ms","method":"POST","requestID":"875f7d969c8856240641b67181ff271f","responseTime":111,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"183a2e90-7a60-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:31:01 +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":"875f7d969c8856240641b67181ff271f"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8198795c-5e8d-4858-9ee0-579fb1779165","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173861.375143} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.412104,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"183a2e90-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"183a2e90-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"183a2e90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b504cd4-6c89-43d2-8616-e787e92d8207/signaling 200 40ms","method":"POST","requestID":"183a2e90-7a60-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/devices/4b504cd4-6c89-43d2-8616-e787e92d8207/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1840be40-7a60-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2MX0.k-UUs_6o3DDozdhFtp2STiFZD2GifkeM0_wZ35QNBPk","level":"info","message":"auth send jwt","requestID":"9a0021e5eb892284855777589268022b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9a0021e5eb892284855777589268022b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/59a94447-bde2-4f48-abcc-120346ea8599","requestID":"9a0021e5eb892284855777589268022b"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.749765,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed40bd8c-52a3-40ba-8e36-132a8d805411","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173861.4183474} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1840be40-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 45ms","method":"POST","requestID":"1840be40-7a60-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.945911,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:01Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1840be40-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9a0021e5eb892284855777589268022b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173861,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2MX0.k-UUs_6o3DDozdhFtp2STiFZD2GifkeM0_wZ35QNBPk"} device-1 | {"level":"info","message":"POST /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/signaling 200 51ms","method":"POST","requestID":"1840be40-7a60-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9a0021e5eb892284855777589268022b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/59a94447-bde2-4f48-abcc-120346ea8599","requestID":"9a0021e5eb892284855777589268022b"} gateway-1 | {"time_local":"24/Sep/2024:10:31:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/59a94447-bde2-4f48-abcc-120346ea8599 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.089","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a0021e5eb892284855777589268022b"} experiment-1 | {"level":"info","message":"GET /experiments/59a94447-bde2-4f48-abcc-120346ea8599 200 84ms","method":"GET","requestID":"9a0021e5eb892284855777589268022b","responseTime":84,"status":200,"url":"/experiments/59a94447-bde2-4f48-abcc-120346ea8599"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2MX0.k-UUs_6o3DDozdhFtp2STiFZD2GifkeM0_wZ35QNBPk","level":"info","message":"auth send jwt","requestID":"6954b8d3a3514e5f463763b1cb14d454"} authentication-1 | {"level":"info","message":"GET /auth 200 43ms","method":"GET","requestID":"6954b8d3a3514e5f463763b1cb14d454","responseTime":43,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/59a94447-bde2-4f48-abcc-120346ea8599","requestID":"6954b8d3a3514e5f463763b1cb14d454"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.3048,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"6954b8d3a3514e5f463763b1cb14d454","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173861,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2MX0.k-UUs_6o3DDozdhFtp2STiFZD2GifkeM0_wZ35QNBPk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6954b8d3a3514e5f463763b1cb14d454","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Attempting to finish experiment","requestID":"6954b8d3a3514e5f463763b1cb14d454"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:01Z"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"185816d0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":26.509852,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"185816d0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173861,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2MX0.k-UUs_6o3DDozdhFtp2STiFZD2GifkeM0_wZ35QNBPk"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"185816d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":29,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4","device":"4b504cd4-6c89-43d2-8616-e787e92d8207","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","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":"663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","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":"663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","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/95e7b45c-b1f1-4c77-971c-06996f34f9d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"95e7b45c-b1f1-4c77-971c-06996f34f9d4","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"861e728f2e704bae3430e27b4cb7c176","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":"connected","url":"http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207"},{"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/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4"}}},"level":"info","message":"received a callback","requestID":"861e728f2e704bae3430e27b4cb7c176"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"861e728f2e704bae3430e27b4cb7c176","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8912b47b43452fab5a42c5fabe2c6775","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":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F95e7b45c-b1f1-4c77-971c-06996f34f9d4': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F95e7b45c-b1f1-4c77-971c-06996f34f9d4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"acbef9c0-dc4e-4dc6-a005-f85c8c0c5624","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173861.6502566} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"352a42c2-b5e3-494e-a5e9-2f9804089257","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173861.6517007} authorization-1 | {"level":"info","message":"POST /relations/update 200 49ms","method":"POST","requestID":"185816d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"8912b47b43452fab5a42c5fabe2c6775","responseTime":9,"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":"connected","url":"http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207"},{"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/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4"}}},"level":"info","message":"received a callback","requestID":"8912b47b43452fab5a42c5fabe2c6775"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"185816d0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4 204 176ms","method":"DELETE","requestID":"185816d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":176,"status":204,"url":"/peerconnections/95e7b45c-b1f1-4c77-971c-06996f34f9d4"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/59a94447-bde2-4f48-abcc-120346ea8599"},"level":"info","message":"Successfully finished experiment","requestID":"6954b8d3a3514e5f463763b1cb14d454"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1882d050-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b504cd4-6c89-43d2-8616-e787e92d8207","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d215d32-e968-4588-adf9-7872f3cc2afa","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173861.8547606} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":28.557738,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1882d050-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b504cd4-6c89-43d2-8616-e787e92d8207","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"1882d050-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1882d050-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4b504cd4-6c89-43d2-8616-e787e92d8207/signaling 200 43ms","method":"POST","requestID":"1882d050-7a60-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/devices/4b504cd4-6c89-43d2-8616-e787e92d8207/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1889d530-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.355843,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:01Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dbf24668-0c7d-4940-a31d-55fdf4bc185f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173861.9309623} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F59a94447-bde2-4f48-abcc-120346ea8599': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F59a94447-bde2-4f48-abcc-120346ea8599","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"04ef9910-1e40-4d10-bca0-737b1142e157","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173861.9348757} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"29bb7171-4532-43b0-9ba5-d187a6415cfa","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173861.9404542} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1889d530-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 43ms","method":"POST","requestID":"1889d530-7a60-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1889d530-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/signaling 200 58ms","method":"POST","requestID":"1889d530-7a60-11ef-8bac-49f2f0d74a99","responseTime":58,"status":200,"url":"/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 133ms","method":"POST","requestID":"6954b8d3a3514e5f463763b1cb14d454","responseTime":133,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/59a94447-bde2-4f48-abcc-120346ea8599","requestID":"6954b8d3a3514e5f463763b1cb14d454"} gateway-1 | {"time_local":"24/Sep/2024:10:31:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/59a94447-bde2-4f48-abcc-120346ea8599 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.641","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6954b8d3a3514e5f463763b1cb14d454"} experiment-1 | {"level":"info","message":"DELETE /experiments/59a94447-bde2-4f48-abcc-120346ea8599 204 622ms","method":"DELETE","requestID":"6954b8d3a3514e5f463763b1cb14d454","responseTime":622,"status":204,"url":"/experiments/59a94447-bde2-4f48-abcc-120346ea8599"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2Mn0.I01secSyOIH3fMhI2U34skW78iizESx1eKhpPewNrNs","level":"info","message":"auth send jwt","requestID":"9ec0ba9b5ce27ec629685995c08117c9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 524ms","method":"POST","requestID":"861e728f2e704bae3430e27b4cb7c176","responseTime":524,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2798","request_time":"6.003","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4cb0ef136a36930d8dc2f99f9310f71a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 489ms","method":"POST","requestID":"8912b47b43452fab5a42c5fabe2c6775","responseTime":489,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"9ec0ba9b5ce27ec629685995c08117c9"} authentication-1 | {"level":"info","message":"GET /auth 200 10ms","method":"GET","requestID":"9ec0ba9b5ce27ec629685995c08117c9","responseTime":10,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.534","http_referrer":"","http_user_agent":"node-fetch","requestID":"861e728f2e704bae3430e27b4cb7c176"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.529","http_referrer":"","http_user_agent":"node-fetch","requestID":"8912b47b43452fab5a42c5fabe2c6775"} gateway-1 | {"time_local":"24/Sep/2024:10:31:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"4.756","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":"022e2787dd4dbf341768a96dfb26bee0"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/663f8e8d-5f1f-401a-aeab-9e7dfa039e1f' closed"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.925883,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9ec0ba9b5ce27ec629685995c08117c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173862,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2Mn0.I01secSyOIH3fMhI2U34skW78iizESx1eKhpPewNrNs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9ec0ba9b5ce27ec629685995c08117c9","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/4b504cd4-6c89-43d2-8616-e787e92d8207' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f86cb4a0-6314-4fd6-b790-d718dd462cac","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173862.2661903} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9ec0ba9b5ce27ec629685995c08117c9","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"148a607f-abe9-4bda-bb92-459ff949ba42","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173862.273112} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"9ec0ba9b5ce27ec629685995c08117c9","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"02b372fb-399b-45f6-9db5-f73d06f16dd8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173862.317515} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"142370c3-28f0-4f5b-a1b5-a0b694f8936a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173862.3177514} authorization-1 | {"level":"info","message":"POST /relations/update 200 45ms","method":"POST","requestID":"9ec0ba9b5ce27ec629685995c08117c9","responseTime":45,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.317482516Z"}]},"request_id":"16ea5855-8fb5-473c-a338-9ffe040a33d2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173862.3238416} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9ec0ba9b5ce27ec629685995c08117c9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9ec0ba9b5ce27ec629685995c08117c9"} gateway-1 | {"time_local":"24/Sep/2024:10:31:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.195","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9ec0ba9b5ce27ec629685995c08117c9"} device-1 | {"level":"info","message":"POST /devices? 201 181ms","method":"POST","requestID":"9ec0ba9b5ce27ec629685995c08117c9","responseTime":181,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2Mn0.I01secSyOIH3fMhI2U34skW78iizESx1eKhpPewNrNs","level":"info","message":"auth send jwt","requestID":"0a31eea88016cec3876be0ed3b1eb4a6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0a31eea88016cec3876be0ed3b1eb4a6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0a31eea88016cec3876be0ed3b1eb4a6"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.836507,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0a31eea88016cec3876be0ed3b1eb4a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173862,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2Mn0.I01secSyOIH3fMhI2U34skW78iizESx1eKhpPewNrNs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0a31eea88016cec3876be0ed3b1eb4a6","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d5a40a8a-88c2-4d6a-9a33-e6b1477e5ae4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173862.4073365} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0a31eea88016cec3876be0ed3b1eb4a6","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f63499aa-8c51-4b7a-a9b4-07ede3d8d2ee","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173862.4524567} authorization-1 | {"level":"info","message":"POST /relations/update 200 43ms","method":"POST","requestID":"0a31eea88016cec3876be0ed3b1eb4a6","responseTime":43,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"4a4a765a-9336-4893-8666-9bfe93d9ba25","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173862.460507} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"885d85ab-87eb-458a-8577-832338e33ac0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173862.460788} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"0a31eea88016cec3876be0ed3b1eb4a6","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.460469574Z"}]},"request_id":"ed63515a-4918-4faf-90a0-d41729adb4da","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173862.492352} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0a31eea88016cec3876be0ed3b1eb4a6"} device-1 | {"level":"info","message":"POST /devices? 201 119ms","method":"POST","requestID":"0a31eea88016cec3876be0ed3b1eb4a6","responseTime":119,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0a31eea88016cec3876be0ed3b1eb4a6"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"0a31eea88016cec3876be0ed3b1eb4a6","responseTime":7,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NH0.OROxwSr1doL6SpGWRhJjjvpAy5VzreFZA2J6sFaeqGg","level":"info","message":"auth send jwt","requestID":"9bb9a128a335ab95791fd8576733204b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9bb9a128a335ab95791fd8576733204b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9bb9a128a335ab95791fd8576733204b"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:04Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.934393,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9bb9a128a335ab95791fd8576733204b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173864,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NH0.OROxwSr1doL6SpGWRhJjjvpAy5VzreFZA2J6sFaeqGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 45ms","method":"POST","requestID":"9bb9a128a335ab95791fd8576733204b","responseTime":45,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.317482516Z"}]},"request_id":"b5f59c74-5c51-43e5-85c0-8b4ad39ce92f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173864.3164358} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"9bb9a128a335ab95791fd8576733204b","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ebc7dabc-167a-46f6-9cb6-18f12e6a3f11","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173864.325273} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"9bb9a128a335ab95791fd8576733204b","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9bb9a128a335ab95791fd8576733204b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.317482516Z"}]},"request_id":"a0fef964-9993-4c5b-b37b-d2b1cbc0813c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173864.3773353} gateway-1 | {"time_local":"24/Sep/2024:10:31:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.126","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9bb9a128a335ab95791fd8576733204b"} device-1 | {"level":"info","message":"PATCH /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36 200 121ms","method":"PATCH","requestID":"9bb9a128a335ab95791fd8576733204b","responseTime":121,"status":200,"url":"/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"9bb9a128a335ab95791fd8576733204b","responseTime":9,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NH0.OROxwSr1doL6SpGWRhJjjvpAy5VzreFZA2J6sFaeqGg","level":"info","message":"auth send jwt","requestID":"be642830157649fa1f9036a731737084"} authentication-1 | {"level":"info","message":"GET /auth 200 45ms","method":"GET","requestID":"be642830157649fa1f9036a731737084","responseTime":45,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"be642830157649fa1f9036a731737084"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:04Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.95727,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"be642830157649fa1f9036a731737084","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173864,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NH0.OROxwSr1doL6SpGWRhJjjvpAy5VzreFZA2J6sFaeqGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 89ms","method":"POST","requestID":"be642830157649fa1f9036a731737084","responseTime":89,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"be642830157649fa1f9036a731737084"} device-1 | {"level":"info","message":"POST /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/websocket 200 104ms","method":"POST","requestID":"be642830157649fa1f9036a731737084","responseTime":104,"status":200,"url":"/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:31:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.153","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"be642830157649fa1f9036a731737084"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a18cbf3c056d644f5b5c7d681273d6b7","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":"a18cbf3c056d644f5b5c7d681273d6b7","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:31:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/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":"a18cbf3c056d644f5b5c7d681273d6b7"} device-1 | {"level":"info","message":"OPTIONS /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/websocket 200 1ms","method":"OPTIONS","requestID":"a18cbf3c056d644f5b5c7d681273d6b7","responseTime":1,"status":200,"url":"/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI","level":"info","message":"auth send jwt","requestID":"21f1be4a2fb47119177a2b73797be781"} authentication-1 | {"level":"info","message":"GET /auth 200 34ms","method":"GET","requestID":"21f1be4a2fb47119177a2b73797be781","responseTime":34,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"21f1be4a2fb47119177a2b73797be781"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.286514,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"21f1be4a2fb47119177a2b73797be781","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173865,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI"} authorization-1 | {"level":"info","message":"POST /authorize 200 60ms","method":"POST","requestID":"21f1be4a2fb47119177a2b73797be781","responseTime":60,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"21f1be4a2fb47119177a2b73797be781"} gateway-1 | {"time_local":"24/Sep/2024:10:31:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.119","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":"21f1be4a2fb47119177a2b73797be781"} device-1 | {"level":"info","message":"POST /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/websocket 200 85ms","method":"POST","requestID":"21f1be4a2fb47119177a2b73797be781","responseTime":85,"status":200,"url":"/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI","level":"info","message":"auth send jwt","requestID":"ce8c9793050f95c425d513a4f2212924"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce8c9793050f95c425d513a4f2212924"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ce8c9793050f95c425d513a4f2212924","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.938892,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ce8c9793050f95c425d513a4f2212924","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173865,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ce8c9793050f95c425d513a4f2212924","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.317482516Z"}]},"request_id":"4c16649f-3e86-4807-880a-352a18287e2c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173865.9276059} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ce8c9793050f95c425d513a4f2212924","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce8c9793050f95c425d513a4f2212924"} gateway-1 | {"time_local":"24/Sep/2024:10:31:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ce8c9793050f95c425d513a4f2212924"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI","level":"info","message":"auth send jwt","requestID":"d44e6763364169363968c1e536baf717"} device-1 | {"level":"info","message":"GET /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36? 200 47ms","method":"GET","requestID":"ce8c9793050f95c425d513a4f2212924","responseTime":47,"status":200,"url":"/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d44e6763364169363968c1e536baf717"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"d44e6763364169363968c1e536baf717","responseTime":7,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.975215,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d44e6763364169363968c1e536baf717","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173865,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d44e6763364169363968c1e536baf717","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.460469574Z"}]},"request_id":"1a2a88df-9d33-44a7-be17-8269df9a2ebe","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173865.9859304} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d44e6763364169363968c1e536baf717","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d44e6763364169363968c1e536baf717"} device-1 | {"level":"info","message":"GET /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c? 200 51ms","method":"GET","requestID":"d44e6763364169363968c1e536baf717","responseTime":51,"status":200,"url":"/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d44e6763364169363968c1e536baf717"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI","level":"info","message":"auth send jwt","requestID":"59f80f2563236a38d70f5b0e79a722b0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"59f80f2563236a38d70f5b0e79a722b0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"59f80f2563236a38d70f5b0e79a722b0"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.965544,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"59f80f2563236a38d70f5b0e79a722b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173865,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI"} authorization-1 | {"level":"info","message":"POST /authorize 200 49ms","method":"POST","requestID":"59f80f2563236a38d70f5b0e79a722b0","responseTime":49,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Attempting to run experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Attempting to book experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Successfully booked experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b15b030-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b15fe50-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.947746,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1b15b030-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173865,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b15b030-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51680","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31: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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.317482516Z"}]},"request_id":"c997cb7d-96e7-494d-b8a0-c2e309be0258","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.1825094} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"1b15b030-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51680","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":5.873843,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1b15fe50-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173865,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI"} authorization-1 | {"level":"info","message":"POST /authorize 200 21ms","method":"POST","requestID":"1b15fe50-7a60-11ef-8bac-49f2f0d74a99","responseTime":21,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b15b030-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36? 200 35ms","method":"GET","requestID":"1b15b030-7a60-11ef-8bac-49f2f0d74a99","responseTime":35,"status":200,"url":"/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.460469574Z"}]},"request_id":"9d114f44-e723-4ee4-b5ac-9f422a1c7950","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.22414} authorization-1 | {"level":"info","message":"POST /relations/query 200 30ms","method":"POST","requestID":"1b15fe50-7a60-11ef-8bac-49f2f0d74a99","responseTime":30,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b15fe50-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Setting up experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} device-1 | {"level":"info","message":"GET /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c? 200 122ms","method":"GET","requestID":"1b15fe50-7a60-11ef-8bac-49f2f0d74a99","responseTime":122,"status":200,"url":"/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Successfully locked booking for experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Attempting to update booking for experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Successfully updated booking for experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Successfully set up experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b40dee0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b4105f0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:51680","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51680","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.148315,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b41c940-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Successfully running experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1b40dee0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173865,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1b40dee0-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51680","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51680","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276217,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.562579,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1b4105f0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173865,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"1b4105f0-7a60-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5fb9dfa-6aef-44c0-b1ea-8f7ab9959b14","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.4609692} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1b41c940-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","object_type":"device","rebac_allow":false,"scope_allow":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":"1b41c940-7a60-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b41c940-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/signaling 200 28ms","method":"POST","requestID":"1b41c940-7a60-11ef-8bac-49f2f0d74a99","responseTime":28,"status":200,"url":"/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b465d20-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.460469574Z"}]},"request_id":"08bd8eaa-43c9-432a-9a7b-9cbaff28f8ed","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.478388} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.317482516Z"}]},"request_id":"c19e4840-d993-4ca1-a640-65c90361bda2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.483399} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"1b4105f0-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1b40dee0-7a60-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b4105f0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.544263,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f658dbed-e571-4338-b9e8-38415c41dfb7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.489892} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1b465d20-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","object_type":"device","rebac_allow":false,"scope_allow":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":"1b465d20-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c? 200 49ms","method":"GET","requestID":"1b4105f0-7a60-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b40dee0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36? 200 51ms","method":"GET","requestID":"1b40dee0-7a60-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b465d20-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F533cab67-25dd-4303-8246-98b2b27e5ccd#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F533cab67-25dd-4303-8246-98b2b27e5ccd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"b988b225-1489-47bb-8896-ddcb0290f9d3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.4998653} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aec71b38-390a-4ab0-8b50-a9440767ee8a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.5012052} device-1 | {"level":"info","message":"POST /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/signaling 200 21ms","method":"POST","requestID":"1b465d20-7a60-11ef-8bac-49f2f0d74a99","responseTime":21,"status":200,"url":"/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 36ms","method":"POST","requestID":"59f80f2563236a38d70f5b0e79a722b0","responseTime":36,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b4b8d40-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"59f80f2563236a38d70f5b0e79a722b0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 522ms","method":"POST","requestID":"59f80f2563236a38d70f5b0e79a722b0","responseTime":522,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} gateway-1 | {"time_local":"24/Sep/2024:10:31:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.530","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"59f80f2563236a38d70f5b0e79a722b0"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7e602354-32da-4fa0-8787-d177d129bf96","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.5267107} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.801666,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1b4b8d40-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","object_type":"device","rebac_allow":false,"scope_allow":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":"1b4b8d40-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2Nn0.GDwrH_wDIa16DUlVw3ACBl1BA8B7wyHGSsMFsDk4DB8","level":"info","message":"auth send jwt","requestID":"71a58d2816cc0c3149f249085343fc03"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"71a58d2816cc0c3149f249085343fc03","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71a58d2816cc0c3149f249085343fc03"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b4b8d40-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/signaling 200 22ms","method":"POST","requestID":"1b4b8d40-7a60-11ef-8bac-49f2f0d74a99","responseTime":22,"status":200,"url":"/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/signaling"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.920964,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b4fd300-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"71a58d2816cc0c3149f249085343fc03","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173866,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2Nn0.GDwrH_wDIa16DUlVw3ACBl1BA8B7wyHGSsMFsDk4DB8"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"71a58d2816cc0c3149f249085343fc03","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65fd5e3a-14ea-4f7a-874b-ee94971855a5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.5495143} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.317482516Z"}]},"request_id":"ef4fa2e6-4fbf-4e58-a752-0bf4db009a2c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.5501804} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"71a58d2816cc0c3149f249085343fc03","responseTime":10,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.822665,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1b4fd300-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","object_type":"device","rebac_allow":false,"scope_allow":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":"1b4fd300-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71a58d2816cc0c3149f249085343fc03"} device-1 | {"level":"info","message":"GET /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36? 200 31ms","method":"GET","requestID":"71a58d2816cc0c3149f249085343fc03","responseTime":31,"status":200,"url":"/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b4fd300-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/signaling 200 23ms","method":"POST","requestID":"1b4fd300-7a60-11ef-8bac-49f2f0d74a99","responseTime":23,"status":200,"url":"/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/signaling"} gateway-1 | {"time_local":"24/Sep/2024:10:31:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71a58d2816cc0c3149f249085343fc03"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Building connection plan","requestID":"59f80f2563236a38d70f5b0e79a722b0"} 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":"27dc34b0-a1e0-42e6-8b90-a873d8f0b3e0"},{"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":"69f62448-8318-4304-a761-2eaf7b5af3fa"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"3a7aa681-8662-482e-858b-9f1519509882"}]},"level":"info","message":"Built pairwise service configurations","requestID":"59f80f2563236a38d70f5b0e79a722b0"} 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/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c"},{"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/dec0389f-455f-481b-a64b-91f4fa5b3e36"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"59f80f2563236a38d70f5b0e79a722b0"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1b53f1b0-7a60-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2Nn0.GDwrH_wDIa16DUlVw3ACBl1BA8B7wyHGSsMFsDk4DB8","level":"info","message":"auth send jwt","requestID":"54c7655711fb4c1a27b0140b64c74f30"} authentication-1 | {"level":"info","message":"GET /auth 200 32ms","method":"GET","requestID":"54c7655711fb4c1a27b0140b64c74f30","responseTime":32,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.975183,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1b53f1b0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173865,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2NX0.8R8IcQIpN0vP3q-59sQK3VlnuhOehyvVoTZCShEg2LI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b53f1b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54c7655711fb4c1a27b0140b64c74f30"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.901111,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"54c7655711fb4c1a27b0140b64c74f30","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173866,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2Nn0.GDwrH_wDIa16DUlVw3ACBl1BA8B7wyHGSsMFsDk4DB8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54c7655711fb4c1a27b0140b64c74f30","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"98e29b2e-60f2-4bc2-b3d9-06beb13a20bd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.6222715} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a180a2e-3052-4d34-b047-59bedb279e38","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.6235344} authorization-1 | {"level":"info","message":"POST /relations/update 200 45ms","method":"POST","requestID":"1b53f1b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":45,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:02.460469574Z"}]},"request_id":"53d17b1a-77a0-4984-9f74-d285888c9410","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.6611197} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"54c7655711fb4c1a27b0140b64c74f30","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54c7655711fb4c1a27b0140b64c74f30"} gateway-1 | {"time_local":"24/Sep/2024:10:31:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.101","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"54c7655711fb4c1a27b0140b64c74f30"} device-1 | {"level":"info","message":"GET /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c? 200 66ms","method":"GET","requestID":"54c7655711fb4c1a27b0140b64c74f30","responseTime":66,"status":200,"url":"/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1b53f1b0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1b53f1b0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4'","requestID":"1b53f1b0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4'","requestID":"1b53f1b0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1b53f1b0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 155ms","method":"POST","requestID":"1b53f1b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":155,"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":"1b53f1b0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4","device":"9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","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":"9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"59f80f2563236a38d70f5b0e79a722b0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b820690-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8865680d-3082-458e-96a8-f055d9d1d0b3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.8793375} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.141644,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1b820690-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","object_type":"device","rebac_allow":false,"scope_allow":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":"1b820690-7a60-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b820690-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/signaling 200 37ms","method":"POST","requestID":"1b820690-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b87fa00-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.972499,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:06Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3c311c1a-bc7f-483b-8463-0dad914e337f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173866.9173975} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1b87fa00-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","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":"1b87fa00-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/signaling 200 13ms","method":"POST","requestID":"1b87fa00-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"1b87fa00-7a60-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"device":"dec0389f-455f-481b-a64b-91f4fa5b3e36","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":"d175b399-e321-4af7-a0e3-d5521c3365e4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7760456202238553204 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:uFwX\r\na=ice-pwd:V7xvwR7GGczwgp/x/bQyPRtD\r\na=ice-options:trickle\r\na=fingerprint:sha-256 47:E2:6F:16:E1:4A:13:09:64:F5:AB:17:0F:00:DC:09:BA:43:7F:14:B2:C0:69:B5:AB:67:F3:69:E1:C9:EC:99\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"dec0389f-455f-481b-a64b-91f4fa5b3e36","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":"dec0389f-455f-481b-a64b-91f4fa5b3e36","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":"dec0389f-455f-481b-a64b-91f4fa5b3e36","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/d175b399-e321-4af7-a0e3-d5521c3365e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d175b399-e321-4af7-a0e3-d5521c3365e4","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:1113626197 1 udp 2113937151 764e7655-bb26-48b6-9ce5-4747fb54f8c9.local 59230 typ host generation 0 ufrag uFwX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fdb5678d8cf276067d63f30b760e0fcc","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":"fdb5678d8cf276067d63f30b760e0fcc","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":"new","url":"http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c"},{"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/dec0389f-455f-481b-a64b-91f4fa5b3e36"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4"}}},"level":"info","message":"received a callback","requestID":"fdb5678d8cf276067d63f30b760e0fcc"} gateway-1 | {"time_local":"24/Sep/2024:10:31:08 +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":"fdb5678d8cf276067d63f30b760e0fcc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"fdb5678d8cf276067d63f30b760e0fcc","responseTime":10,"status":200,"url":"/callbacks/experiment"} device-1 | {"content":{"candidate":"candidate:3511367494 1 udp 1677729535 141.24.211.56 59230 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag uFwX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"dec0389f-455f-481b-a64b-91f4fa5b3e36","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 | {"data":{"peerconnection":"d175b399-e321-4af7-a0e3-d5521c3365e4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c'"} device-1 | {"device":"dec0389f-455f-481b-a64b-91f4fa5b3e36","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":"9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"d175b399-e321-4af7-a0e3-d5521c3365e4","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/d175b399-e321-4af7-a0e3-d5521c3365e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d175b399-e321-4af7-a0e3-d5521c3365e4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c26ac4ab7a952b9fe349323c9df95d6a","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 7ms","method":"GET","requestID":"c26ac4ab7a952b9fe349323c9df95d6a","responseTime":7,"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/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c"},{"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/dec0389f-455f-481b-a64b-91f4fa5b3e36"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4"}}},"level":"info","message":"received a callback","requestID":"c26ac4ab7a952b9fe349323c9df95d6a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1cd93220-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":6.850946,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd175b399-e321-4af7-a0e3-d5521c3365e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac832e40-a631-41c5-9aef-fdf17f5b52ba","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173869.1306326} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1cd93220-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4","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 43ms","method":"POST","requestID":"1cd93220-7a60-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2OX0.sjaAJwbw7UQDrz_todN_gxKCXPEoigkSBqWFvoAsSp0","level":"info","message":"auth send jwt","requestID":"d24c9b658af68547455680652d11ec8e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d24c9b658af68547455680652d11ec8e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1cd93220-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","requestID":"d24c9b658af68547455680652d11ec8e"} device-1 | {"level":"info","message":"GET /peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4 200 51ms","method":"GET","requestID":"1cd93220-7a60-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.001676,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d24c9b658af68547455680652d11ec8e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173869,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2OX0.sjaAJwbw7UQDrz_todN_gxKCXPEoigkSBqWFvoAsSp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d24c9b658af68547455680652d11ec8e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","requestID":"d24c9b658af68547455680652d11ec8e"} gateway-1 | {"time_local":"24/Sep/2024:10:31:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd HTTP/1.1","status": "200","body_bytes_sent":"1286","request_time":"0.069","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d24c9b658af68547455680652d11ec8e"} experiment-1 | {"level":"info","message":"GET /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd 200 61ms","method":"GET","requestID":"d24c9b658af68547455680652d11ec8e","responseTime":61,"status":200,"url":"/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"c26ac4ab7a952b9fe349323c9df95d6a","responseTime":141,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ced2f50-7a60-11ef-8bac-49f2f0d74a99"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.181","http_referrer":"","http_user_agent":"node-fetch","requestID":"c26ac4ab7a952b9fe349323c9df95d6a"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"abeb03bb-d5cf-4e37-b658-b8edc37a63b5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173869.2864604} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.542539,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1ced2f50-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"1ced2f50-7a60-11ef-8bac-49f2f0d74a99","responseTime":34,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ced2f50-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/signaling 200 39ms","method":"POST","requestID":"1ced2f50-7a60-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cf545a0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.036644,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e59fd051-d77e-4349-8a45-aecf1e5635f6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173869.3116338} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1cf545a0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","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":"1cf545a0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/signaling 200 13ms","method":"POST","requestID":"1cf545a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2OX0.sjaAJwbw7UQDrz_todN_gxKCXPEoigkSBqWFvoAsSp0","level":"info","message":"auth send jwt","requestID":"289525d4d9bdec6a77c410f34ce5c8d8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"289525d4d9bdec6a77c410f34ce5c8d8","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","requestID":"289525d4d9bdec6a77c410f34ce5c8d8"} authorization-1 | {"level":"info","message":"POST /authorize 200 51ms","method":"POST","requestID":"1cf545a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.878475,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"289525d4d9bdec6a77c410f34ce5c8d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173869,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2OX0.sjaAJwbw7UQDrz_todN_gxKCXPEoigkSBqWFvoAsSp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"289525d4d9bdec6a77c410f34ce5c8d8","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","requestID":"289525d4d9bdec6a77c410f34ce5c8d8"} experiment-1 | {"level":"info","message":"GET /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd 200 53ms","method":"GET","requestID":"289525d4d9bdec6a77c410f34ce5c8d8","responseTime":53,"status":200,"url":"/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"} gateway-1 | {"time_local":"24/Sep/2024:10:31:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"289525d4d9bdec6a77c410f34ce5c8d8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2OX0.sjaAJwbw7UQDrz_todN_gxKCXPEoigkSBqWFvoAsSp0","level":"info","message":"auth send jwt","requestID":"9d29110254f1d6fe27639fc2d69a4de0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9d29110254f1d6fe27639fc2d69a4de0","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","requestID":"9d29110254f1d6fe27639fc2d69a4de0"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.89637,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9d29110254f1d6fe27639fc2d69a4de0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173869,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2OX0.sjaAJwbw7UQDrz_todN_gxKCXPEoigkSBqWFvoAsSp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9d29110254f1d6fe27639fc2d69a4de0","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Attempting to finish experiment","requestID":"9d29110254f1d6fe27639fc2d69a4de0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1d1047b0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.916851,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1d1047b0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173869,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2OX0.sjaAJwbw7UQDrz_todN_gxKCXPEoigkSBqWFvoAsSp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1d1047b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd175b399-e321-4af7-a0e3-d5521c3365e4': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd175b399-e321-4af7-a0e3-d5521c3365e4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"4e3dacc7-90e0-4284-8819-463484cca29f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173869.5289598} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b342a719-77dd-4b83-89eb-d6f1dbe188b0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173869.57302} authorization-1 | {"level":"info","message":"POST /relations/update 200 51ms","method":"POST","requestID":"1d1047b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/relations/update"} device-1 | {"device":"dec0389f-455f-481b-a64b-91f4fa5b3e36","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":"dec0389f-455f-481b-a64b-91f4fa5b3e36","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":"dec0389f-455f-481b-a64b-91f4fa5b3e36","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 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4","device":"9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","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/d175b399-e321-4af7-a0e3-d5521c3365e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d175b399-e321-4af7-a0e3-d5521c3365e4","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c'"} 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/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c"},{"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/dec0389f-455f-481b-a64b-91f4fa5b3e36"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4"}}},"level":"info","message":"received a callback","requestID":"2ecc37709bfd8c236c051abeb9af1b16"} 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/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c"},{"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/dec0389f-455f-481b-a64b-91f4fa5b3e36"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4"}}},"level":"info","message":"received a callback","requestID":"6ec6c0f75f83ebde5e3a987a6bbe1ce3"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2ecc37709bfd8c236c051abeb9af1b16","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":"2ecc37709bfd8c236c051abeb9af1b16","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ec6c0f75f83ebde5e3a987a6bbe1ce3","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":"6ec6c0f75f83ebde5e3a987a6bbe1ce3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1d1047b0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4 204 190ms","method":"DELETE","requestID":"1d1047b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":190,"status":204,"url":"/peerconnections/d175b399-e321-4af7-a0e3-d5521c3365e4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d344a70-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"},"level":"info","message":"Successfully finished experiment","requestID":"9d29110254f1d6fe27639fc2d69a4de0"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F533cab67-25dd-4303-8246-98b2b27e5ccd': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F533cab67-25dd-4303-8246-98b2b27e5ccd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"4ca27cdb-4794-4559-b249-6fbdb2e661cd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173869.7341561} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf6889e3-ef3f-4a38-9fae-1822d82dcddc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173869.7347717} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dae8924b-dbaa-4331-ade6-7abd578474ae","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173869.734978} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"9d29110254f1d6fe27639fc2d69a4de0","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.780987,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1d344a70-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"1d344a70-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d344a70-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/signaling 200 53ms","method":"POST","requestID":"1d344a70-7a60-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d3cfd00-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec0389f-455f-481b-a64b-91f4fa5b3e36","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4dd4fa84-77f8-4671-8275-9bcd8c1fb373","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173869.7831686} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.179889,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1d3cfd00-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36","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":"1d3cfd00-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/signaling 200 17ms","method":"POST","requestID":"1d3cfd00-7a60-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"1d3cfd00-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd","requestID":"9d29110254f1d6fe27639fc2d69a4de0"} gateway-1 | {"time_local":"24/Sep/2024:10:31:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.521","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9d29110254f1d6fe27639fc2d69a4de0"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.331","http_referrer":"","http_user_agent":"node-fetch","requestID":"2ecc37709bfd8c236c051abeb9af1b16"} gateway-1 | {"time_local":"24/Sep/2024:10:31:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2801","request_time":"5.404","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e2cef3a4ddf20ddbd76934665db48ddf"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.329","http_referrer":"","http_user_agent":"node-fetch","requestID":"6ec6c0f75f83ebde5e3a987a6bbe1ce3"} experiment-1 | {"level":"info","message":"DELETE /experiments/533cab67-25dd-4303-8246-98b2b27e5ccd 204 519ms","method":"DELETE","requestID":"9d29110254f1d6fe27639fc2d69a4de0","responseTime":519,"status":204,"url":"/experiments/533cab67-25dd-4303-8246-98b2b27e5ccd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 316ms","method":"POST","requestID":"2ecc37709bfd8c236c051abeb9af1b16","responseTime":316,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 318ms","method":"POST","requestID":"6ec6c0f75f83ebde5e3a987a6bbe1ce3","responseTime":318,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2OX0.sjaAJwbw7UQDrz_todN_gxKCXPEoigkSBqWFvoAsSp0","level":"info","message":"auth send jwt","requestID":"4b6abc6f7dadc24472c2e2b3b7435b32"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4b6abc6f7dadc24472c2e2b3b7435b32","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4b6abc6f7dadc24472c2e2b3b7435b32"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.979115,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"4b6abc6f7dadc24472c2e2b3b7435b32","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173869,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg2OX0.sjaAJwbw7UQDrz_todN_gxKCXPEoigkSBqWFvoAsSp0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4b6abc6f7dadc24472c2e2b3b7435b32","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:31:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"4.176","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":"e2d926c263deb8c0b8c93ea3a9482c4e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2c016ac4-7592-4da4-93d2-3bb2902410f9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173870.0924363} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"4b6abc6f7dadc24472c2e2b3b7435b32","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6f93f4be-9ecd-4940-b287-27bf2d883620","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173870.104726} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"4b6abc6f7dadc24472c2e2b3b7435b32","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"314a49bc-7d87-4ee6-b11b-905233e3ec12","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173870.1481228} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18bc55c7-243e-40fd-b473-2f0d02a6b921","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173870.150707} authorization-1 | {"level":"info","message":"POST /relations/update 200 51ms","method":"POST","requestID":"4b6abc6f7dadc24472c2e2b3b7435b32","responseTime":51,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/dec0389f-455f-481b-a64b-91f4fa5b3e36' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9ac59ef9-42e1-4e0b-a9d3-2ec55d2df75c' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.148086116Z"}]},"request_id":"b1070c7e-abf8-4d81-974b-c57f0964e0f0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173870.1903582} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4b6abc6f7dadc24472c2e2b3b7435b32","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4b6abc6f7dadc24472c2e2b3b7435b32"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.247","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4b6abc6f7dadc24472c2e2b3b7435b32"} device-1 | {"level":"info","message":"POST /devices? 201 200ms","method":"POST","requestID":"4b6abc6f7dadc24472c2e2b3b7435b32","responseTime":200,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3MH0.68dx7D_vl4qnAmGm7dZ9pda7ysS-rkp61fiXO2Y_diI","level":"info","message":"auth send jwt","requestID":"58808b8333cea1b8a11d43c3c524780f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"58808b8333cea1b8a11d43c3c524780f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"58808b8333cea1b8a11d43c3c524780f"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:10Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.981954,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"58808b8333cea1b8a11d43c3c524780f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173870,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3MH0.68dx7D_vl4qnAmGm7dZ9pda7ysS-rkp61fiXO2Y_diI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58808b8333cea1b8a11d43c3c524780f","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9ef860e4-d8d3-4d12-bf45-f097e7ae0fe0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173870.267071} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"58808b8333cea1b8a11d43c3c524780f","responseTime":31,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"73a9b088-57b9-4cb2-b8e5-4746339a6a06","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173870.3011634} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"58808b8333cea1b8a11d43c3c524780f","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"915c1024-18f4-442b-80e6-ba51588e90e2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173870.3445535} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f73312ad-93b6-4ac5-919a-7659cea57e7f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173870.3458414} authorization-1 | {"level":"info","message":"POST /relations/update 200 48ms","method":"POST","requestID":"58808b8333cea1b8a11d43c3c524780f","responseTime":48,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.344515467Z"}]},"request_id":"a4a1401f-1139-4c4f-9706-e1a45d1ea70a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173870.3941584} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.207","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"58808b8333cea1b8a11d43c3c524780f"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"58808b8333cea1b8a11d43c3c524780f"} device-1 | {"level":"info","message":"POST /devices? 201 197ms","method":"POST","requestID":"58808b8333cea1b8a11d43c3c524780f","responseTime":197,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 51ms","method":"POST","requestID":"58808b8333cea1b8a11d43c3c524780f","responseTime":51,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3Mn0.6a6fAYhCZipfznoRzvGYuq5reFWPqlW6ww5SF5Wumu8","level":"info","message":"auth send jwt","requestID":"a1c5f5841a4eaaa462c2e18844c2df4e"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"a1c5f5841a4eaaa462c2e18844c2df4e","responseTime":11,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a1c5f5841a4eaaa462c2e18844c2df4e"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.920809,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a1c5f5841a4eaaa462c2e18844c2df4e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173872,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3Mn0.6a6fAYhCZipfznoRzvGYuq5reFWPqlW6ww5SF5Wumu8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a1c5f5841a4eaaa462c2e18844c2df4e","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.148086116Z"}]},"request_id":"0b57171f-f504-41eb-82ed-7e9501ff6637","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173872.3378408} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a1c5f5841a4eaaa462c2e18844c2df4e","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ad05cbdd-723f-41ef-8319-92d8f126a2e5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173872.372565} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"a1c5f5841a4eaaa462c2e18844c2df4e","responseTime":31,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a1c5f5841a4eaaa462c2e18844c2df4e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.148086116Z"}]},"request_id":"faa23750-e4de-4500-897a-bf91348b782b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173872.3939369} gateway-1 | {"time_local":"24/Sep/2024:10:31:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.145","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a1c5f5841a4eaaa462c2e18844c2df4e"} device-1 | {"level":"info","message":"PATCH /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4 200 133ms","method":"PATCH","requestID":"a1c5f5841a4eaaa462c2e18844c2df4e","responseTime":133,"status":200,"url":"/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3Mn0.6a6fAYhCZipfznoRzvGYuq5reFWPqlW6ww5SF5Wumu8","level":"info","message":"auth send jwt","requestID":"c111e61ee38e148cfb736da23f46acc6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c111e61ee38e148cfb736da23f46acc6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c111e61ee38e148cfb736da23f46acc6"} authorization-1 | {"level":"info","message":"POST /relations/query 200 44ms","method":"POST","requestID":"a1c5f5841a4eaaa462c2e18844c2df4e","responseTime":44,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:12Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.703798,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c111e61ee38e148cfb736da23f46acc6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173872,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3Mn0.6a6fAYhCZipfznoRzvGYuq5reFWPqlW6ww5SF5Wumu8"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c111e61ee38e148cfb736da23f46acc6","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c111e61ee38e148cfb736da23f46acc6"} device-1 | {"level":"info","message":"POST /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/websocket 200 24ms","method":"POST","requestID":"c111e61ee38e148cfb736da23f46acc6","responseTime":24,"status":200,"url":"/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:31:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c111e61ee38e148cfb736da23f46acc6"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"936c98b8e982b441df4067c1a5dea85b","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":"936c98b8e982b441df4067c1a5dea85b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/143c11d4-0551-4e73-84e1-979d8493eb75/websocket 200 1ms","method":"OPTIONS","requestID":"936c98b8e982b441df4067c1a5dea85b","responseTime":1,"status":200,"url":"/devices/143c11d4-0551-4e73-84e1-979d8493eb75/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:31:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/143c11d4-0551-4e73-84e1-979d8493eb75/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":"936c98b8e982b441df4067c1a5dea85b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3M30.GeZOGEO7OmxZ5OEDqrjPsgmrDCDMHIhAeQRcsRW0G3Q","level":"info","message":"auth send jwt","requestID":"72f051d9724a599c9de436ded69e6f9e"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"72f051d9724a599c9de436ded69e6f9e","responseTime":29,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"72f051d9724a599c9de436ded69e6f9e"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.925429,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"72f051d9724a599c9de436ded69e6f9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173873,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3M30.GeZOGEO7OmxZ5OEDqrjPsgmrDCDMHIhAeQRcsRW0G3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"72f051d9724a599c9de436ded69e6f9e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"72f051d9724a599c9de436ded69e6f9e"} device-1 | {"level":"info","message":"POST /devices/143c11d4-0551-4e73-84e1-979d8493eb75/websocket 200 47ms","method":"POST","requestID":"72f051d9724a599c9de436ded69e6f9e","responseTime":47,"status":200,"url":"/devices/143c11d4-0551-4e73-84e1-979d8493eb75/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:31:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/143c11d4-0551-4e73-84e1-979d8493eb75/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.090","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":"72f051d9724a599c9de436ded69e6f9e"} device-1 | {"level":"info","message":"device 'http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3M30.GeZOGEO7OmxZ5OEDqrjPsgmrDCDMHIhAeQRcsRW0G3Q","level":"info","message":"auth send jwt","requestID":"ecbb1034a547cc557bedd16ea7b97b5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ecbb1034a547cc557bedd16ea7b97b5a"} authentication-1 | {"level":"info","message":"GET /auth 200 47ms","method":"GET","requestID":"ecbb1034a547cc557bedd16ea7b97b5a","responseTime":47,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:13Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141088,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ecbb1034a547cc557bedd16ea7b97b5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173873,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3M30.GeZOGEO7OmxZ5OEDqrjPsgmrDCDMHIhAeQRcsRW0G3Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ecbb1034a547cc557bedd16ea7b97b5a","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.148086116Z"}]},"request_id":"5f0634d9-203c-4f51-bfdd-cc2a09ae90b5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173873.9913774} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ecbb1034a547cc557bedd16ea7b97b5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ecbb1034a547cc557bedd16ea7b97b5a"} device-1 | {"level":"info","message":"GET /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4? 200 42ms","method":"GET","requestID":"ecbb1034a547cc557bedd16ea7b97b5a","responseTime":42,"status":200,"url":"/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ecbb1034a547cc557bedd16ea7b97b5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c","level":"info","message":"auth send jwt","requestID":"8cd14cfe38ebef81e5d1e1d08932f6c4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8cd14cfe38ebef81e5d1e1d08932f6c4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8cd14cfe38ebef81e5d1e1d08932f6c4"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.944067,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"8cd14cfe38ebef81e5d1e1d08932f6c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173874,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"8cd14cfe38ebef81e5d1e1d08932f6c4","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.344515467Z"}]},"request_id":"8d4d78ed-0aae-4656-ba74-34e2baa31518","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.039456} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8cd14cfe38ebef81e5d1e1d08932f6c4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8cd14cfe38ebef81e5d1e1d08932f6c4"} gateway-1 | {"time_local":"24/Sep/2024:10:31:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/143c11d4-0551-4e73-84e1-979d8493eb75? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8cd14cfe38ebef81e5d1e1d08932f6c4"} device-1 | {"level":"info","message":"GET /devices/143c11d4-0551-4e73-84e1-979d8493eb75? 200 42ms","method":"GET","requestID":"8cd14cfe38ebef81e5d1e1d08932f6c4","responseTime":42,"status":200,"url":"/devices/143c11d4-0551-4e73-84e1-979d8493eb75?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c","level":"info","message":"auth send jwt","requestID":"497189ce36b416dcade6a73fcd943cc9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"497189ce36b416dcade6a73fcd943cc9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"497189ce36b416dcade6a73fcd943cc9"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.00771,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"497189ce36b416dcade6a73fcd943cc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173874,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"497189ce36b416dcade6a73fcd943cc9","responseTime":29,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Attempting to run experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Attempting to book experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Successfully booked experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1fe93140-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1fe9a670-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.314659,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1fe93140-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173874,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"1fe93140-7a60-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1fe9a670-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173874,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 45ms","method":"POST","requestID":"1fe9a670-7a60-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.099226,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.344515467Z"}]},"request_id":"28dd739a-d718-4cd2-9780-b865fafa1a72","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.3484004} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1fe9a670-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.148086116Z"}]},"request_id":"de092d10-e991-4e65-b79b-9591cba4e764","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.350308} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1fe93140-7a60-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1fe93140-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4? 200 139ms","method":"GET","requestID":"1fe93140-7a60-11ef-8bac-49f2f0d74a99","responseTime":139,"status":200,"url":"/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1fe9a670-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Setting up experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} device-1 | {"level":"info","message":"GET /devices/143c11d4-0551-4e73-84e1-979d8493eb75? 200 148ms","method":"GET","requestID":"1fe9a670-7a60-11ef-8bac-49f2f0d74a99","responseTime":148,"status":200,"url":"/devices/143c11d4-0551-4e73-84e1-979d8493eb75?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Successfully locked booking for experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Attempting to update booking for experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Successfully updated booking for experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Successfully set up experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"200b1120-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.838844,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"200b1120-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173874,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"200b1120-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"200cbed0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.920298,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.148086116Z"}]},"request_id":"46bdbb7a-8f7b-404c-a25b-b35c01ae17f2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.4963756} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"200b1120-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"200b1120-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"200cbed0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173874,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c"} device-1 | {"level":"info","message":"GET /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4? 200 23ms","method":"GET","requestID":"200b1120-7a60-11ef-8bac-49f2f0d74a99","responseTime":23,"status":200,"url":"/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4?"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"200cbed0-7a60-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"200ff320-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.344515467Z"}]},"request_id":"0e5bdff5-9f60-4126-a292-a231460cd6ec","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.5203505} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"200cbed0-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"200cbed0-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Successfully running experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.593011,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} device-1 | {"level":"info","message":"GET /devices/143c11d4-0551-4e73-84e1-979d8493eb75? 200 41ms","method":"GET","requestID":"200cbed0-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/devices/143c11d4-0551-4e73-84e1-979d8493eb75?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a92537b-c7c9-4464-8ccf-b9dae1531133","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.5242593} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"200ff320-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"200ff320-7a60-11ef-8bac-49f2f0d74a99","responseTime":16,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"200ff320-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/signaling 200 51ms","method":"POST","requestID":"200ff320-7a60-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2017e260-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2018a5b0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.21884,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.450123,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96adbde9-095f-421e-ad92-23c1fe546eba","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.580197} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d7049e0e-e211-4e3b-ab69-90bd2921f1ea","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.5802672} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2017e260-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","object_type":"device","rebac_allow":false,"scope_allow":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":"2017e260-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2018a5b0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","object_type":"device","rebac_allow":false,"scope_allow":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":"2018a5b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2017e260-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/signaling 200 30ms","method":"POST","requestID":"2017e260-7a60-11ef-8bac-49f2f0d74a99","responseTime":30,"status":200,"url":"/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2020bc00-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2018a5b0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F55df52f9-c613-46e0-a682-8c90d5a35697#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F55df52f9-c613-46e0-a682-8c90d5a35697","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"64599fea-ae7c-4d7e-ae17-30e9d09eabc3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.624653} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d819464a-0500-4db7-8aab-51a801b40b88","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.625279} device-1 | {"level":"info","message":"POST /devices/143c11d4-0551-4e73-84e1-979d8493eb75/signaling 200 59ms","method":"POST","requestID":"2018a5b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/devices/143c11d4-0551-4e73-84e1-979d8493eb75/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"497189ce36b416dcade6a73fcd943cc9"} gateway-1 | {"time_local":"24/Sep/2024:10:31:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.603","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"497189ce36b416dcade6a73fcd943cc9"} authorization-1 | {"level":"info","message":"POST /relations/update 200 86ms","method":"POST","requestID":"497189ce36b416dcade6a73fcd943cc9","responseTime":86,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"POST /experiments? 201 596ms","method":"POST","requestID":"497189ce36b416dcade6a73fcd943cc9","responseTime":596,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"29124b6f-2bf3-4df5-b93c-a8162c65771c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.6370409} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":9.154787,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2020bc00-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 27ms","method":"POST","requestID":"2020bc00-7a60-11ef-8bac-49f2f0d74a99","responseTime":27,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c","level":"info","message":"auth send jwt","requestID":"dc8495c092398055ac7f2642239e2808"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dc8495c092398055ac7f2642239e2808","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dc8495c092398055ac7f2642239e2808"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2020bc00-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/143c11d4-0551-4e73-84e1-979d8493eb75/signaling 200 61ms","method":"POST","requestID":"2020bc00-7a60-11ef-8bac-49f2f0d74a99","responseTime":61,"status":200,"url":"/devices/143c11d4-0551-4e73-84e1-979d8493eb75/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Building connection plan","requestID":"497189ce36b416dcade6a73fcd943cc9"} 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":"fb144c17-46db-47e3-bfc3-1737bd94ea3a"},{"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":"abefc016-b251-405b-82cb-5bb700d41969"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"46a3990e-6287-4836-84d8-6091a7f0366f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"497189ce36b416dcade6a73fcd943cc9"} 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/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4"},{"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/143c11d4-0551-4e73-84e1-979d8493eb75"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"497189ce36b416dcade6a73fcd943cc9"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"202ace20-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:55742","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.380717,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.004828,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"dc8495c092398055ac7f2642239e2808","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173874,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 19ms","method":"POST","requestID":"dc8495c092398055ac7f2642239e2808","responseTime":19,"status":200,"url":"/authorize"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"202ace20-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173874,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"202ace20-7a60-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c","level":"info","message":"auth send jwt","requestID":"5b8daf87105e7e70bdd5ae1706ce4dd9"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"5b8daf87105e7e70bdd5ae1706ce4dd9","responseTime":9,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dc8495c092398055ac7f2642239e2808"} device-1 | {"level":"info","message":"GET /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4? 200 94ms","method":"GET","requestID":"dc8495c092398055ac7f2642239e2808","responseTime":94,"status":200,"url":"/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b8daf87105e7e70bdd5ae1706ce4dd9"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.148086116Z"}]},"request_id":"da04f8cf-bf38-49ca-996e-ab631ff56d4c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.7170193} authorization-1 | {"level":"info","message":"POST /relations/query 200 46ms","method":"POST","requestID":"dc8495c092398055ac7f2642239e2808","responseTime":46,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.980272,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"5b8daf87105e7e70bdd5ae1706ce4dd9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173874,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3NH0._H722YJZj_wMER-TnHEy-oA-OFdibACOMmw1gQr7O0c"} gateway-1 | {"time_local":"24/Sep/2024:10:31:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.096","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dc8495c092398055ac7f2642239e2808"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"5b8daf87105e7e70bdd5ae1706ce4dd9","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:10.344515467Z"}]},"request_id":"c60f50ea-0820-4361-aab6-8c0acfa248ef","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.7734346} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"104a9c0f-cbb9-47ef-851c-2ebe9673e1ef","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.8191574} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ad92291e-1d91-4052-8379-d42c8f01e132","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.8245873} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b8daf87105e7e70bdd5ae1706ce4dd9"} device-1 | {"level":"info","message":"GET /devices/143c11d4-0551-4e73-84e1-979d8493eb75? 200 76ms","method":"GET","requestID":"5b8daf87105e7e70bdd5ae1706ce4dd9","responseTime":76,"status":200,"url":"/devices/143c11d4-0551-4e73-84e1-979d8493eb75?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/143c11d4-0551-4e73-84e1-979d8493eb75? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.086","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5b8daf87105e7e70bdd5ae1706ce4dd9"} authorization-1 | {"level":"info","message":"POST /relations/query 200 64ms","method":"POST","requestID":"5b8daf87105e7e70bdd5ae1706ce4dd9","responseTime":64,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/update 200 103ms","method":"POST","requestID":"202ace20-7a60-11ef-8bac-49f2f0d74a99","responseTime":103,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"202ace20-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"202ace20-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924'","requestID":"202ace20-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924'","requestID":"202ace20-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"202ace20-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 194ms","method":"POST","requestID":"202ace20-7a60-11ef-8bac-49f2f0d74a99","responseTime":194,"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":"202ace20-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924","device":"143c11d4-0551-4e73-84e1-979d8493eb75","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/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"497189ce36b416dcade6a73fcd943cc9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20590a10-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:14Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.642368,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:15Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b04545ba-0051-4440-ab0e-d3ae48809267","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173874.9997356} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"20590a10-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","object_type":"device","rebac_allow":false,"scope_allow":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":"20590a10-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20590a10-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/signaling 200 18ms","method":"POST","requestID":"20590a10-7a60-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"205c8c80-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:15Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.47986,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:15Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3b58153-f8ab-4828-a923-ddd027c326ea","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173875.0466259} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"205c8c80-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 36ms","method":"POST","requestID":"205c8c80-7a60-11ef-8bac-49f2f0d74a99","responseTime":36,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"205c8c80-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/143c11d4-0551-4e73-84e1-979d8493eb75/signaling 200 48ms","method":"POST","requestID":"205c8c80-7a60-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/devices/143c11d4-0551-4e73-84e1-979d8493eb75/signaling"} device-1 | {"device":"143c11d4-0551-4e73-84e1-979d8493eb75","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"143c11d4-0551-4e73-84e1-979d8493eb75","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 123837425519113829 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:Augl\r\na=ice-pwd:Mv7IntMKKN8c0PxncjgwmgoP\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C5:17:A5:3A:CA:EE:B2:71:4D:96:BF:3F:C7:C0:DA:1F:5A:63:FD:2C:13:03:40:72:D3:E4:52:F2:F1:41:44:1E\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"143c11d4-0551-4e73-84e1-979d8493eb75","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"143c11d4-0551-4e73-84e1-979d8493eb75","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","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":"0dca1445-477b-4ce9-a6a7-1ad2c73da924","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","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":"8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","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":"8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","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":"8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","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/0dca1445-477b-4ce9-a6a7-1ad2c73da924' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0dca1445-477b-4ce9-a6a7-1ad2c73da924","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8630bd0140143e8c7676095d7c15907c","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":"8630bd0140143e8c7676095d7c15907c","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/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4"},{"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/143c11d4-0551-4e73-84e1-979d8493eb75"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924"}}},"level":"info","message":"received a callback","requestID":"8630bd0140143e8c7676095d7c15907c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"8630bd0140143e8c7676095d7c15907c","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.047","http_referrer":"","http_user_agent":"node-fetch","requestID":"8630bd0140143e8c7676095d7c15907c"} device-1 | {"content":{"candidate":"candidate:517921039 1 udp 2113937151 4abbf996-e2c7-41da-9fcf-2093c8f11456.local 47486 typ host generation 0 ufrag Augl network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"143c11d4-0551-4e73-84e1-979d8493eb75","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2599662448 1 udp 1677729535 141.24.211.56 47486 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Augl network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"143c11d4-0551-4e73-84e1-979d8493eb75","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3388869883 1 udp 33562623 141.24.210.113 64978 typ relay raddr 141.24.211.56 rport 47486 generation 0 ufrag Augl network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"143c11d4-0551-4e73-84e1-979d8493eb75","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"143c11d4-0551-4e73-84e1-979d8493eb75","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/143c11d4-0551-4e73-84e1-979d8493eb75'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75'"} device-1 | {"data":{"peerconnection":"0dca1445-477b-4ce9-a6a7-1ad2c73da924","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","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":"143c11d4-0551-4e73-84e1-979d8493eb75","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"0dca1445-477b-4ce9-a6a7-1ad2c73da924","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","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/0dca1445-477b-4ce9-a6a7-1ad2c73da924' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0dca1445-477b-4ce9-a6a7-1ad2c73da924","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"382f18773d1345bc7b1525f0e44542b3","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":"382f18773d1345bc7b1525f0e44542b3","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/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4"},{"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/143c11d4-0551-4e73-84e1-979d8493eb75"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924"}}},"level":"info","message":"received a callback","requestID":"382f18773d1345bc7b1525f0e44542b3"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"21aba1c0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.767812,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0dca1445-477b-4ce9-a6a7-1ad2c73da924","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"442b9a0b-8ede-4a4f-bdc7-ee7b4ef85876","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173877.2182598} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"21aba1c0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924","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":"21aba1c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"21aba1c0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924 200 62ms","method":"GET","requestID":"21aba1c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":62,"status":200,"url":"/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"382f18773d1345bc7b1525f0e44542b3","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"382f18773d1345bc7b1525f0e44542b3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21bb8040-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.150871,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"69fb03f0-1074-4291-bf30-8e095419923d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173877.3222666} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"21bb8040-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","object_type":"device","rebac_allow":false,"scope_allow":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":"21bb8040-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21bb8040-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/signaling 200 19ms","method":"POST","requestID":"21bb8040-7a60-11ef-8bac-49f2f0d74a99","responseTime":19,"status":200,"url":"/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21c23700-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46fcd3d7-940d-4e60-9bc7-7e93f524d5cb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173877.3684978} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.970003,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"21c23700-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","object_type":"device","rebac_allow":false,"scope_allow":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":"21c23700-7a60-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21c23700-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/143c11d4-0551-4e73-84e1-979d8493eb75/signaling 200 26ms","method":"POST","requestID":"21c23700-7a60-11ef-8bac-49f2f0d74a99","responseTime":26,"status":200,"url":"/devices/143c11d4-0551-4e73-84e1-979d8493eb75/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3N30.LgzuT7eMJSjZU9bFqMElL-gnHAHLM9zSFLfo6AEpoV4","level":"info","message":"auth send jwt","requestID":"e9806fd4ec7a42dee34fc46c633ae0ae"} authentication-1 | {"level":"info","message":"GET /auth 200 16ms","method":"GET","requestID":"e9806fd4ec7a42dee34fc46c633ae0ae","responseTime":16,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/55df52f9-c613-46e0-a682-8c90d5a35697","requestID":"e9806fd4ec7a42dee34fc46c633ae0ae"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.925787,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e9806fd4ec7a42dee34fc46c633ae0ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173877,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3N30.LgzuT7eMJSjZU9bFqMElL-gnHAHLM9zSFLfo6AEpoV4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e9806fd4ec7a42dee34fc46c633ae0ae","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/55df52f9-c613-46e0-a682-8c90d5a35697","requestID":"e9806fd4ec7a42dee34fc46c633ae0ae"} gateway-1 | {"time_local":"24/Sep/2024:10:31:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/55df52f9-c613-46e0-a682-8c90d5a35697 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e9806fd4ec7a42dee34fc46c633ae0ae"} experiment-1 | {"level":"info","message":"GET /experiments/55df52f9-c613-46e0-a682-8c90d5a35697 200 45ms","method":"GET","requestID":"e9806fd4ec7a42dee34fc46c633ae0ae","responseTime":45,"status":200,"url":"/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3N30.LgzuT7eMJSjZU9bFqMElL-gnHAHLM9zSFLfo6AEpoV4","level":"info","message":"auth send jwt","requestID":"74e6d9811b2bbc487e26d926d1072fb9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"74e6d9811b2bbc487e26d926d1072fb9","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/55df52f9-c613-46e0-a682-8c90d5a35697","requestID":"74e6d9811b2bbc487e26d926d1072fb9"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.900832,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"74e6d9811b2bbc487e26d926d1072fb9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173877,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3N30.LgzuT7eMJSjZU9bFqMElL-gnHAHLM9zSFLfo6AEpoV4"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"74e6d9811b2bbc487e26d926d1072fb9","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Attempting to finish experiment","requestID":"74e6d9811b2bbc487e26d926d1072fb9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"21f220a0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.014409,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"21f220a0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173877,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3N30.LgzuT7eMJSjZU9bFqMElL-gnHAHLM9zSFLfo6AEpoV4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"21f220a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","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":"8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","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":"8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","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 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924","device":"143c11d4-0551-4e73-84e1-979d8493eb75","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/0dca1445-477b-4ce9-a6a7-1ad2c73da924' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0dca1445-477b-4ce9-a6a7-1ad2c73da924","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0dca1445-477b-4ce9-a6a7-1ad2c73da924': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0dca1445-477b-4ce9-a6a7-1ad2c73da924","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"dcd67392-000c-458c-8853-a4016070833f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173877.7502005} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e9a0e3e2-dfc6-4a19-b457-84570ae068fb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173877.7508485} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"16ffe53463b0aa0ec73b5955fd989d47","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 6ms","method":"GET","requestID":"16ffe53463b0aa0ec73b5955fd989d47","responseTime":6,"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/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4"},{"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/143c11d4-0551-4e73-84e1-979d8493eb75"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924"}}},"level":"info","message":"received a callback","requestID":"16ffe53463b0aa0ec73b5955fd989d47"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7996a7eb52c8b6419380c79dde69eaaa","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":"7996a7eb52c8b6419380c79dde69eaaa","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 65ms","method":"POST","requestID":"21f220a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":65,"status":200,"url":"/relations/update"} 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/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4"},{"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/143c11d4-0551-4e73-84e1-979d8493eb75"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924"}}},"level":"info","message":"received a callback","requestID":"7996a7eb52c8b6419380c79dde69eaaa"} device-1 | {"data":{"peerconnection":"0dca1445-477b-4ce9-a6a7-1ad2c73da924","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"21f220a0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924 204 268ms","method":"DELETE","requestID":"21f220a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":268,"status":204,"url":"/peerconnections/0dca1445-477b-4ce9-a6a7-1ad2c73da924"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"},"level":"info","message":"Successfully finished experiment","requestID":"74e6d9811b2bbc487e26d926d1072fb9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2224f070-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:18Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0d3e3288-b8e3-4678-9863-7d144f4dd901","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.0414124} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.590562,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2224f070-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4","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":"2224f070-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/signaling 200 43ms","method":"POST","requestID":"2224f070-7a60-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"222bf550-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"2224f070-7a60-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:18Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c11d4-0551-4e73-84e1-979d8493eb75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a8efe71-627c-47ec-84bb-d57147f4db65","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.0882552} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":31.174995,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"222bf550-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/143c11d4-0551-4e73-84e1-979d8493eb75","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":"222bf550-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/143c11d4-0551-4e73-84e1-979d8493eb75/signaling 200 43ms","method":"POST","requestID":"222bf550-7a60-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/devices/143c11d4-0551-4e73-84e1-979d8493eb75/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 43ms","method":"POST","requestID":"222bf550-7a60-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F55df52f9-c613-46e0-a682-8c90d5a35697': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F55df52f9-c613-46e0-a682-8c90d5a35697","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"747c6b0f-96ed-4059-9ba4-a584dd5b269f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.1027665} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5bd1e4a0-135c-4285-9d72-df8901ed10e4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.1041048} authorization-1 | {"level":"info","message":"POST /relations/update 200 132ms","method":"POST","requestID":"74e6d9811b2bbc487e26d926d1072fb9","responseTime":132,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/55df52f9-c613-46e0-a682-8c90d5a35697","requestID":"74e6d9811b2bbc487e26d926d1072fb9"} gateway-1 | {"time_local":"24/Sep/2024:10:31:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/55df52f9-c613-46e0-a682-8c90d5a35697 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.734","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"74e6d9811b2bbc487e26d926d1072fb9"} experiment-1 | {"level":"info","message":"DELETE /experiments/55df52f9-c613-46e0-a682-8c90d5a35697 204 754ms","method":"DELETE","requestID":"74e6d9811b2bbc487e26d926d1072fb9","responseTime":754,"status":204,"url":"/experiments/55df52f9-c613-46e0-a682-8c90d5a35697"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 569ms","method":"POST","requestID":"16ffe53463b0aa0ec73b5955fd989d47","responseTime":569,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 557ms","method":"POST","requestID":"7996a7eb52c8b6419380c79dde69eaaa","responseTime":557,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3OH0.LQnxeCifQ7RWWOOIPoXK6xWwBSWOKRSnOjb0HxyXeoE","level":"info","message":"auth send jwt","requestID":"d6622f138e14346b68dc97ee5139643a"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"d6622f138e14346b68dc97ee5139643a","responseTime":8,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:31:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3192","request_time":"5.891","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3ed19df475c8d881211190df006125e9"} gateway-1 | {"time_local":"24/Sep/2024:10:31:18 +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.575","http_referrer":"","http_user_agent":"node-fetch","requestID":"16ffe53463b0aa0ec73b5955fd989d47"} gateway-1 | {"time_local":"24/Sep/2024:10:31:18 +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.577","http_referrer":"","http_user_agent":"node-fetch","requestID":"7996a7eb52c8b6419380c79dde69eaaa"} device-1 | {"level":"info","message":"postDevices called","requestID":"d6622f138e14346b68dc97ee5139643a"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:18Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.945108,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d6622f138e14346b68dc97ee5139643a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173878,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3OH0.LQnxeCifQ7RWWOOIPoXK6xWwBSWOKRSnOjb0HxyXeoE"} authorization-1 | {"level":"info","message":"POST /authorize 200 35ms","method":"POST","requestID":"d6622f138e14346b68dc97ee5139643a","responseTime":35,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:31:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2702","request_time":"4.560","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":"0d041f0a2e1dbf0ae3e9beac1725b1b8"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8c3ff0b8-1399-473a-a85a-c2d065e7f3c4' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"16b4bb45-4ac6-4eb4-883a-c9dad7fcc700","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.50238} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d6622f138e14346b68dc97ee5139643a","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/143c11d4-0551-4e73-84e1-979d8493eb75' 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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43387139-0d3b-498c-9857-47622e54d45f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.511546} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"d6622f138e14346b68dc97ee5139643a","responseTime":30,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"7387261f-15ec-45e2-a32d-43061e6b96c4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.5646882} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43938fe0-e9e2-4ad2-ba43-ddf146fa0422","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.5653186} authorization-1 | {"level":"info","message":"POST /relations/update 200 59ms","method":"POST","requestID":"d6622f138e14346b68dc97ee5139643a","responseTime":59,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.564650228Z"}]},"request_id":"5c13f2f6-79c7-4d73-9ebb-6f884100f3f2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.5806115} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"d6622f138e14346b68dc97ee5139643a","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d6622f138e14346b68dc97ee5139643a"} gateway-1 | {"time_local":"24/Sep/2024:10:31:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.238","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d6622f138e14346b68dc97ee5139643a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3OH0.LQnxeCifQ7RWWOOIPoXK6xWwBSWOKRSnOjb0HxyXeoE","level":"info","message":"auth send jwt","requestID":"7ea072a51d94b8e6d595aa4b579f48b1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7ea072a51d94b8e6d595aa4b579f48b1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices? 201 237ms","method":"POST","requestID":"d6622f138e14346b68dc97ee5139643a","responseTime":237,"status":201,"url":"/devices?"} device-1 | {"level":"info","message":"postDevices called","requestID":"7ea072a51d94b8e6d595aa4b579f48b1"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:18Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.964351,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"7ea072a51d94b8e6d595aa4b579f48b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173878,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg3OH0.LQnxeCifQ7RWWOOIPoXK6xWwBSWOKRSnOjb0HxyXeoE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7ea072a51d94b8e6d595aa4b579f48b1","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4b69eead-cd66-488a-a883-4e97961a398e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.6512663} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7ea072a51d94b8e6d595aa4b579f48b1","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e367947b-e88c-434c-b6d7-8c90d93b600c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.6819909} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"7ea072a51d94b8e6d595aa4b579f48b1","responseTime":31,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"ba47995d-dc7b-4c95-878e-c069e721e51f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.695717} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cb561864-0fcf-4468-b37d-12d84b9c7c14","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.6959777} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"7ea072a51d94b8e6d595aa4b579f48b1","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.695681679Z"}]},"request_id":"6338338f-fcee-4bc3-b186-1d4fa2531d0f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173878.7015488} authorization-1 | {"level":"info","message":"POST /relations/query 200 30ms","method":"POST","requestID":"7ea072a51d94b8e6d595aa4b579f48b1","responseTime":30,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7ea072a51d94b8e6d595aa4b579f48b1"} device-1 | {"level":"info","message":"POST /devices? 201 138ms","method":"POST","requestID":"7ea072a51d94b8e6d595aa4b579f48b1","responseTime":138,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7ea072a51d94b8e6d595aa4b579f48b1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y","level":"info","message":"auth send jwt","requestID":"53357edf2dd5eb20ab6fb1f57116ed25"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"53357edf2dd5eb20ab6fb1f57116ed25","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"53357edf2dd5eb20ab6fb1f57116ed25"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.955705,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"53357edf2dd5eb20ab6fb1f57116ed25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173880,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 28ms","method":"POST","requestID":"53357edf2dd5eb20ab6fb1f57116ed25","responseTime":28,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.564650228Z"}]},"request_id":"132108d4-e3d0-4a9c-a9a0-8586f151cac1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173880.3856778} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"53357edf2dd5eb20ab6fb1f57116ed25","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"26dbbb6d-ce5c-43de-b298-a1d5da3f1bd4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173880.3944232} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"53357edf2dd5eb20ab6fb1f57116ed25","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.564650228Z"}]},"request_id":"7c35c13a-495c-4b2b-853f-8b50b618e8f0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173880.4384518} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"53357edf2dd5eb20ab6fb1f57116ed25"} gateway-1 | {"time_local":"24/Sep/2024:10:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4134e540-4102-4e69-936c-7a8f4d4c0775 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.101","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"53357edf2dd5eb20ab6fb1f57116ed25"} device-1 | {"level":"info","message":"PATCH /devices/4134e540-4102-4e69-936c-7a8f4d4c0775 200 94ms","method":"PATCH","requestID":"53357edf2dd5eb20ab6fb1f57116ed25","responseTime":94,"status":200,"url":"/devices/4134e540-4102-4e69-936c-7a8f4d4c0775"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"53357edf2dd5eb20ab6fb1f57116ed25","responseTime":6,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y","level":"info","message":"auth send jwt","requestID":"c60159a7cf6044c1b658de04246c24ec"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c60159a7cf6044c1b658de04246c24ec","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c60159a7cf6044c1b658de04246c24ec"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.01909,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c60159a7cf6044c1b658de04246c24ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173880,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"c60159a7cf6044c1b658de04246c24ec","responseTime":33,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c60159a7cf6044c1b658de04246c24ec"} device-1 | {"level":"info","message":"POST /devices/4134e540-4102-4e69-936c-7a8f4d4c0775/websocket 200 74ms","method":"POST","requestID":"c60159a7cf6044c1b658de04246c24ec","responseTime":74,"status":200,"url":"/devices/4134e540-4102-4e69-936c-7a8f4d4c0775/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4134e540-4102-4e69-936c-7a8f4d4c0775/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.075","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c60159a7cf6044c1b658de04246c24ec"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775' connected"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7543c0ac139fd251de03ad8becabd850"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y","level":"info","message":"auth send jwt","requestID":"7543c0ac139fd251de03ad8becabd850"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"7543c0ac139fd251de03ad8becabd850","responseTime":28,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.98585,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"7543c0ac139fd251de03ad8becabd850","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173880,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7543c0ac139fd251de03ad8becabd850","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.695681679Z"}]},"request_id":"2aa9cef2-a23d-4cf6-8a70-c10f608a31ab","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173880.6699889} authorization-1 | {"level":"info","message":"POST /relations/query 200 29ms","method":"POST","requestID":"7543c0ac139fd251de03ad8becabd850","responseTime":29,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a614744e-54b7-4744-a620-62614687492c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173880.7021508} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"7543c0ac139fd251de03ad8becabd850","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.695681679Z"}]},"request_id":"f973075d-c0fb-4f0f-94f9-ff9c27936d0f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173880.7490847} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7543c0ac139fd251de03ad8becabd850","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7543c0ac139fd251de03ad8becabd850"} gateway-1 | {"time_local":"24/Sep/2024:10:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.132","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7543c0ac139fd251de03ad8becabd850"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y","level":"info","message":"auth send jwt","requestID":"ce4267afc166b38fe8b0060b710501e6"} authentication-1 | {"level":"info","message":"GET /auth 200 35ms","method":"GET","requestID":"ce4267afc166b38fe8b0060b710501e6","responseTime":35,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"PATCH /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad 200 142ms","method":"PATCH","requestID":"7543c0ac139fd251de03ad8becabd850","responseTime":142,"status":200,"url":"/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ce4267afc166b38fe8b0060b710501e6"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.912152,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ce4267afc166b38fe8b0060b710501e6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173880,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ce4267afc166b38fe8b0060b710501e6","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ce4267afc166b38fe8b0060b710501e6"} gateway-1 | {"time_local":"24/Sep/2024:10:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.094","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ce4267afc166b38fe8b0060b710501e6"} device-1 | {"level":"info","message":"POST /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/websocket 200 58ms","method":"POST","requestID":"ce4267afc166b38fe8b0060b710501e6","responseTime":58,"status":200,"url":"/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y","level":"info","message":"auth send jwt","requestID":"d88a4e997ed068464d685d2a53d093c6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d88a4e997ed068464d685d2a53d093c6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d88a4e997ed068464d685d2a53d093c6"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.987703,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"d88a4e997ed068464d685d2a53d093c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173880,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d88a4e997ed068464d685d2a53d093c6","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.564650228Z"}]},"request_id":"f8367378-77d2-4be0-9da7-6cf9358e2765","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173880.9094727} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d88a4e997ed068464d685d2a53d093c6","responseTime":28,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d88a4e997ed068464d685d2a53d093c6"} gateway-1 | {"time_local":"24/Sep/2024:10:31:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4134e540-4102-4e69-936c-7a8f4d4c0775? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d88a4e997ed068464d685d2a53d093c6"} device-1 | {"level":"info","message":"GET /devices/4134e540-4102-4e69-936c-7a8f4d4c0775? 200 86ms","method":"GET","requestID":"d88a4e997ed068464d685d2a53d093c6","responseTime":86,"status":200,"url":"/devices/4134e540-4102-4e69-936c-7a8f4d4c0775?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y","level":"info","message":"auth send jwt","requestID":"ff5774fc35b5937a9042327fa5860d7e"} authentication-1 | {"level":"info","message":"GET /auth 200 45ms","method":"GET","requestID":"ff5774fc35b5937a9042327fa5860d7e","responseTime":45,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff5774fc35b5937a9042327fa5860d7e"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.993815,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ff5774fc35b5937a9042327fa5860d7e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173880,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MH0.k5R51wy5M6f0B_OKq3BDtX17m3vB4lsMSpyDXbyoZ5Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ff5774fc35b5937a9042327fa5860d7e","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.695681679Z"}]},"request_id":"0e779f77-7ab9-4ce8-9d9f-7df45f5f3c13","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.0041628} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ff5774fc35b5937a9042327fa5860d7e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff5774fc35b5937a9042327fa5860d7e"} device-1 | {"level":"info","message":"GET /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad? 200 45ms","method":"GET","requestID":"ff5774fc35b5937a9042327fa5860d7e","responseTime":45,"status":200,"url":"/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.092","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ff5774fc35b5937a9042327fa5860d7e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MX0.v0jbAXj367HpcSE53bb7ZcWQnwqiLlJNf20RkEh5FfM","level":"info","message":"auth send jwt","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7f62d17a9dc911ff6d549b2e4413fd15","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.977822,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"7f62d17a9dc911ff6d549b2e4413fd15","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173881,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MX0.v0jbAXj367HpcSE53bb7ZcWQnwqiLlJNf20RkEh5FfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"7f62d17a9dc911ff6d549b2e4413fd15","responseTime":37,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Attempting to run experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Attempting to book experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Successfully booked experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"240940d0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915749,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"240940d0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173881,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MX0.v0jbAXj367HpcSE53bb7ZcWQnwqiLlJNf20RkEh5FfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"240940d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2409dd10-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893981,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2409dd10-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173881,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MX0.v0jbAXj367HpcSE53bb7ZcWQnwqiLlJNf20RkEh5FfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2409dd10-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.564650228Z"}]},"request_id":"58222f56-4796-4665-8d5d-5c6a0f58ec0d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.2261095} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"240940d0-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.695681679Z"}]},"request_id":"0ae93d22-3e8f-4adc-b5f5-6c3a246acf75","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.2315013} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2409dd10-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"240940d0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4134e540-4102-4e69-936c-7a8f4d4c0775? 200 91ms","method":"GET","requestID":"240940d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":91,"status":200,"url":"/devices/4134e540-4102-4e69-936c-7a8f4d4c0775?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2409dd10-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Setting up experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} device-1 | {"level":"info","message":"GET /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad? 200 95ms","method":"GET","requestID":"2409dd10-7a60-11ef-8bac-49f2f0d74a99","responseTime":95,"status":200,"url":"/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Successfully set up experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"242d91b0-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Successfully running experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"242db8c0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.990539,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"242ea320-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"242d91b0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173881,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MX0.v0jbAXj367HpcSE53bb7ZcWQnwqiLlJNf20RkEh5FfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"242d91b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.974857,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"242db8c0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173881,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MX0.v0jbAXj367HpcSE53bb7ZcWQnwqiLlJNf20RkEh5FfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 42ms","method":"POST","requestID":"242db8c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":42,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.695681679Z"}]},"request_id":"fa9a246b-f6bb-49ce-bc96-43bdefc28840","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.4824197} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.564650228Z"}]},"request_id":"70b8fe05-39ce-4794-a862-6c0577f30412","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.5134177} authorization-1 | {"level":"info","message":"POST /relations/query 200 37ms","method":"POST","requestID":"242db8c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"242db8c0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad? 200 102ms","method":"GET","requestID":"242db8c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":102,"status":200,"url":"/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 44ms","method":"POST","requestID":"242d91b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":44,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b8a675c-ba38-4aea-98ff-e040386d62d4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.5187373} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd9d98461-7b0d-449e-9371-f25e058cd3e3#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd9d98461-7b0d-449e-9371-f25e058cd3e3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"504e9dc2-9738-4a72-ae28-d2bcd3b6b581","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.5243356} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"242d91b0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/4134e540-4102-4e69-936c-7a8f4d4c0775? 200 112ms","method":"GET","requestID":"242d91b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":112,"status":200,"url":"/devices/4134e540-4102-4e69-936c-7a8f4d4c0775?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa8e862c-839c-49d9-8d9e-314451e052e0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.5256727} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.487048,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"242ea320-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","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":"242ea320-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4134e540-4102-4e69-936c-7a8f4d4c0775/signaling 200 115ms","method":"POST","requestID":"242ea320-7a60-11ef-8bac-49f2f0d74a99","responseTime":115,"status":200,"url":"/devices/4134e540-4102-4e69-936c-7a8f4d4c0775/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"24402f50-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2440a480-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 107ms","method":"POST","requestID":"242ea320-7a60-11ef-8bac-49f2f0d74a99","responseTime":107,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 124ms","method":"POST","requestID":"7f62d17a9dc911ff6d549b2e4413fd15","responseTime":124,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ad1cb48-d0df-494b-a65a-9ba4e3ed692c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.5830545} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72147211-8d01-463d-adec-b5c0e42186c2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.583199} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":12.494862,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} experiment-1 | {"level":"info","message":"POST /experiments? 201 544ms","method":"POST","requestID":"7f62d17a9dc911ff6d549b2e4413fd15","responseTime":544,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"24402f50-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","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":"24/Sep/2024:10:31:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.551","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"24402f50-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4134e540-4102-4e69-936c-7a8f4d4c0775/signaling 200 52ms","method":"POST","requestID":"24402f50-7a60-11ef-8bac-49f2f0d74a99","responseTime":52,"status":200,"url":"/devices/4134e540-4102-4e69-936c-7a8f4d4c0775/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 22ms","method":"POST","requestID":"24402f50-7a60-11ef-8bac-49f2f0d74a99","responseTime":22,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":10.791471,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MX0.v0jbAXj367HpcSE53bb7ZcWQnwqiLlJNf20RkEh5FfM","level":"info","message":"auth send jwt","requestID":"1890002d0fcc56851b5e2dd4d5b925d3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1890002d0fcc56851b5e2dd4d5b925d3","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2440a480-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 22ms","method":"POST","requestID":"2440a480-7a60-11ef-8bac-49f2f0d74a99","responseTime":22,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2448e1e0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1890002d0fcc56851b5e2dd4d5b925d3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2440a480-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/signaling 200 93ms","method":"POST","requestID":"2440a480-7a60-11ef-8bac-49f2f0d74a99","responseTime":93,"status":200,"url":"/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/signaling"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:52796","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.297357,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.146902,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3a2a33cb-65e0-4c65-8f4f-9643620655d0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.6380968} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2448e1e0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","object_type":"device","rebac_allow":false,"scope_allow":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":"2448e1e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1890002d0fcc56851b5e2dd4d5b925d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173881,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MX0.v0jbAXj367HpcSE53bb7ZcWQnwqiLlJNf20RkEh5FfM"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2448e1e0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"1890002d0fcc56851b5e2dd4d5b925d3","responseTime":37,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/signaling 200 79ms","method":"POST","requestID":"2448e1e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":79,"status":200,"url":"/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Building connection plan","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} 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":"c9842e21-46c1-44fe-a3f2-6540de940d38"},{"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":"b36e129e-8ec1-4ebb-98cb-1a38e3a00236"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"1992a37a-a349-431c-88ec-32d7ca2a59ee"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} 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/4134e540-4102-4e69-936c-7a8f4d4c0775"},{"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/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.564650228Z"}]},"request_id":"cee10f64-b69d-4991-bbe9-1eb0dd09f948","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.687479} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1890002d0fcc56851b5e2dd4d5b925d3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"24562850-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.264408,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"24562850-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173881,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MX0.v0jbAXj367HpcSE53bb7ZcWQnwqiLlJNf20RkEh5FfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"24562850-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1890002d0fcc56851b5e2dd4d5b925d3"} device-1 | {"level":"info","message":"GET /devices/4134e540-4102-4e69-936c-7a8f4d4c0775? 200 99ms","method":"GET","requestID":"1890002d0fcc56851b5e2dd4d5b925d3","responseTime":99,"status":200,"url":"/devices/4134e540-4102-4e69-936c-7a8f4d4c0775?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4134e540-4102-4e69-936c-7a8f4d4c0775? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1890002d0fcc56851b5e2dd4d5b925d3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MX0.v0jbAXj367HpcSE53bb7ZcWQnwqiLlJNf20RkEh5FfM","level":"info","message":"auth send jwt","requestID":"850ac189649590edabc7dbdd2babff70"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"850ac189649590edabc7dbdd2babff70","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"850ac189649590edabc7dbdd2babff70"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"ea8c7fa1-788d-4acb-8dbb-4b10521c3682","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.742483} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88c8018e-8bc1-480e-bb96-d91b56552674","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.7432654} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902853,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"24562850-7a60-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"850ac189649590edabc7dbdd2babff70","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173881,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4MX0.v0jbAXj367HpcSE53bb7ZcWQnwqiLlJNf20RkEh5FfM"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"24562850-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"24562850-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd'","requestID":"24562850-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd'","requestID":"24562850-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"24562850-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 113ms","method":"POST","requestID":"24562850-7a60-11ef-8bac-49f2f0d74a99","responseTime":113,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} authorization-1 | {"level":"info","message":"POST /authorize 200 56ms","method":"POST","requestID":"850ac189649590edabc7dbdd2babff70","responseTime":56,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:18.695681679Z"}]},"request_id":"edb58854-9fca-49f4-9878-9253173c0be6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.8009589} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"850ac189649590edabc7dbdd2babff70","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"850ac189649590edabc7dbdd2babff70"} gateway-1 | {"time_local":"24/Sep/2024:10:31:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.103","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"850ac189649590edabc7dbdd2babff70"} device-1 | {"level":"info","message":"GET /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad? 200 98ms","method":"GET","requestID":"850ac189649590edabc7dbdd2babff70","responseTime":98,"status":200,"url":"/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"24562850-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7f62d17a9dc911ff6d549b2e4413fd15"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"24763370-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e6a4f994-4861-4bab-b91a-037dfb390623","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.9023385} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.494869,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"24763370-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","object_type":"device","rebac_allow":false,"scope_allow":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":"24763370-7a60-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"24763370-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4134e540-4102-4e69-936c-7a8f4d4c0775/signaling 200 49ms","method":"POST","requestID":"24763370-7a60-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/devices/4134e540-4102-4e69-936c-7a8f4d4c0775/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"247dd490-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37eb9ec7-6b08-416f-8d22-4ada2405e548","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173881.9541748} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.251856,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"247dd490-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","object_type":"device","rebac_allow":false,"scope_allow":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":"247dd490-7a60-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"247dd490-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/signaling 200 18ms","method":"POST","requestID":"247dd490-7a60-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/signaling"} device-1 | {"device":"f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","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":"be539bf1-d31c-47d3-aa47-405b10ca25bd","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4134e540-4102-4e69-936c-7a8f4d4c0775","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":"4134e540-4102-4e69-936c-7a8f4d4c0775","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":"4134e540-4102-4e69-936c-7a8f4d4c0775","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":"be539bf1-d31c-47d3-aa47-405b10ca25bd","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4134e540-4102-4e69-936c-7a8f4d4c0775","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":"4134e540-4102-4e69-936c-7a8f4d4c0775","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/be539bf1-d31c-47d3-aa47-405b10ca25bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"be539bf1-d31c-47d3-aa47-405b10ca25bd","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"66714f5a4e322a808e95006e65c9ee38","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":"66714f5a4e322a808e95006e65c9ee38","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/4134e540-4102-4e69-936c-7a8f4d4c0775"},{"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/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd"}}},"level":"info","message":"received a callback","requestID":"66714f5a4e322a808e95006e65c9ee38"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"66714f5a4e322a808e95006e65c9ee38","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31:24 +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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"66714f5a4e322a808e95006e65c9ee38"} device-1 | {"device":"f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","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":"f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","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":"f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","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":"be539bf1-d31c-47d3-aa47-405b10ca25bd","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","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":"4134e540-4102-4e69-936c-7a8f4d4c0775","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":"4134e540-4102-4e69-936c-7a8f4d4c0775","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":"be539bf1-d31c-47d3-aa47-405b10ca25bd","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","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 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"be539bf1-d31c-47d3-aa47-405b10ca25bd","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2ebdfda1225e8bd25cc82ab6917f7c2e","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":"2ebdfda1225e8bd25cc82ab6917f7c2e","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/4134e540-4102-4e69-936c-7a8f4d4c0775"},{"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/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd"}}},"level":"info","message":"received a callback","requestID":"2ebdfda1225e8bd25cc82ab6917f7c2e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"25d99400-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbe539bf1-d31c-47d3-aa47-405b10ca25bd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7baa403f-4005-4244-ada2-383555a89aea","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173884.232434} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.254817,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"25d99400-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd","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":"25d99400-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"25d99400-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd 200 59ms","method":"GET","requestID":"25d99400-7a60-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4NH0.SZ2x53BeRHR1WKqT1LjcrcvevZddgej467ECAcIIx0I","level":"info","message":"auth send jwt","requestID":"e61e2886811930fea75303d803094ce6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e61e2886811930fea75303d803094ce6","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3","requestID":"e61e2886811930fea75303d803094ce6"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.980533,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"e61e2886811930fea75303d803094ce6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173884,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4NH0.SZ2x53BeRHR1WKqT1LjcrcvevZddgej467ECAcIIx0I"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 147ms","method":"POST","requestID":"2ebdfda1225e8bd25cc82ab6917f7c2e","responseTime":147,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31:24 +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.152","http_referrer":"","http_user_agent":"node-fetch","requestID":"2ebdfda1225e8bd25cc82ab6917f7c2e"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"e61e2886811930fea75303d803094ce6","responseTime":37,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25ea35d0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.23739,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef3b0cfc-1895-49f0-a7a0-c225ef9aa252","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173884.3389049} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"25ea35d0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","object_type":"device","rebac_allow":false,"scope_allow":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":"25ea35d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3","requestID":"e61e2886811930fea75303d803094ce6"} experiment-1 | {"level":"info","message":"GET /experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3 200 55ms","method":"GET","requestID":"e61e2886811930fea75303d803094ce6","responseTime":55,"status":200,"url":"/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"} gateway-1 | {"time_local":"24/Sep/2024:10:31:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3 HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.068","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e61e2886811930fea75303d803094ce6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25ea35d0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4134e540-4102-4e69-936c-7a8f4d4c0775/signaling 200 17ms","method":"POST","requestID":"25ea35d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/devices/4134e540-4102-4e69-936c-7a8f4d4c0775/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4NH0.SZ2x53BeRHR1WKqT1LjcrcvevZddgej467ECAcIIx0I","level":"info","message":"auth send jwt","requestID":"91182a63e7ff5e07afddae57ccad0bf7"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"91182a63e7ff5e07afddae57ccad0bf7","responseTime":28,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"25f24c20-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.461608,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35379087-230e-48d7-aeba-e0c7c2bc5ed5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173884.3923204} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"25f24c20-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","object_type":"device","rebac_allow":false,"scope_allow":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":"25f24c20-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3","requestID":"91182a63e7ff5e07afddae57ccad0bf7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"25f24c20-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/signaling 200 19ms","method":"POST","requestID":"25f24c20-7a60-11ef-8bac-49f2f0d74a99","responseTime":19,"status":200,"url":"/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/signaling"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.975182,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"91182a63e7ff5e07afddae57ccad0bf7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173884,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4NH0.SZ2x53BeRHR1WKqT1LjcrcvevZddgej467ECAcIIx0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"91182a63e7ff5e07afddae57ccad0bf7","responseTime":30,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Attempting to finish experiment","requestID":"91182a63e7ff5e07afddae57ccad0bf7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"25fb4cd0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.961855,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"25fb4cd0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173884,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4NH0.SZ2x53BeRHR1WKqT1LjcrcvevZddgej467ECAcIIx0I"} authorization-1 | {"level":"info","message":"POST /authorize 200 51ms","method":"POST","requestID":"25fb4cd0-7a60-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/authorize"} device-1 | {"device":"4134e540-4102-4e69-936c-7a8f4d4c0775","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":"4134e540-4102-4e69-936c-7a8f4d4c0775","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":"4134e540-4102-4e69-936c-7a8f4d4c0775","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":"f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","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":"f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","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":"f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","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/be539bf1-d31c-47d3-aa47-405b10ca25bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"be539bf1-d31c-47d3-aa47-405b10ca25bd","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b5b4838be79aaf5883dda34b23f34b1","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":"9b5b4838be79aaf5883dda34b23f34b1","responseTime":3,"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/4134e540-4102-4e69-936c-7a8f4d4c0775"},{"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/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd"}}},"level":"info","message":"received a callback","requestID":"9b5b4838be79aaf5883dda34b23f34b1"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbe539bf1-d31c-47d3-aa47-405b10ca25bd': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbe539bf1-d31c-47d3-aa47-405b10ca25bd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"8d87a573-decc-4c09-907f-c32df67b0dfc","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173884.584259} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af76a065-d7b7-49ce-b6c3-a926ede66877","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173884.585626} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b125f0e2e5d514e080c611876ca86fad","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 41ms","method":"POST","requestID":"25fb4cd0-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b125f0e2e5d514e080c611876ca86fad","responseTime":3,"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/4134e540-4102-4e69-936c-7a8f4d4c0775"},{"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/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd"}}},"level":"info","message":"received a callback","requestID":"b125f0e2e5d514e080c611876ca86fad"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"25fb4cd0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd 204 153ms","method":"DELETE","requestID":"25fb4cd0-7a60-11ef-8bac-49f2f0d74a99","responseTime":153,"status":204,"url":"/peerconnections/be539bf1-d31c-47d3-aa47-405b10ca25bd"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"},"level":"info","message":"Successfully finished experiment","requestID":"91182a63e7ff5e07afddae57ccad0bf7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"261a6d90-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4134e540-4102-4e69-936c-7a8f4d4c0775","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50532fbb-9521-4639-b43d-853732ca2df9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173884.658322} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.880027,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"261a6d90-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775","object_type":"device","rebac_allow":false,"scope_allow":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":"261a6d90-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"261a6d90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/4134e540-4102-4e69-936c-7a8f4d4c0775/signaling 200 18ms","method":"POST","requestID":"261a6d90-7a60-11ef-8bac-49f2f0d74a99","responseTime":18,"status":200,"url":"/devices/4134e540-4102-4e69-936c-7a8f4d4c0775/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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5f89aab-c0a0-4f5f-9092-5f2b77156df2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173884.675256} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd9d98461-7b0d-449e-9371-f25e058cd3e3': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd9d98461-7b0d-449e-9371-f25e058cd3e3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"e0e3f0c3-ebba-435a-8741-a06e5f3b72a1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173884.6753702} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"261e8c40-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/update 200 58ms","method":"POST","requestID":"91182a63e7ff5e07afddae57ccad0bf7","responseTime":58,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.240173,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff19ed33b-69f8-4bcc-9441-dc8ff61c9bad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb34621f-46eb-446e-8865-73edfee1e46c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173884.6814625} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"261e8c40-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"261e8c40-7a60-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"261e8c40-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/signaling 200 37ms","method":"POST","requestID":"261e8c40-7a60-11ef-8bac-49f2f0d74a99","responseTime":37,"status":200,"url":"/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3","requestID":"91182a63e7ff5e07afddae57ccad0bf7"} experiment-1 | {"level":"info","message":"DELETE /experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3 204 432ms","method":"DELETE","requestID":"91182a63e7ff5e07afddae57ccad0bf7","responseTime":432,"status":204,"url":"/experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 273ms","method":"POST","requestID":"9b5b4838be79aaf5883dda34b23f34b1","responseTime":273,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 238ms","method":"POST","requestID":"b125f0e2e5d514e080c611876ca86fad","responseTime":238,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"4.315","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"353b524a8b35542f871383d9c8289d21"} gateway-1 | {"time_local":"24/Sep/2024:10:31:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d9d98461-7b0d-449e-9371-f25e058cd3e3 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.477","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91182a63e7ff5e07afddae57ccad0bf7"} gateway-1 | {"time_local":"24/Sep/2024:10:31:24 +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.284","http_referrer":"","http_user_agent":"node-fetch","requestID":"9b5b4838be79aaf5883dda34b23f34b1"} gateway-1 | {"time_local":"24/Sep/2024:10:31:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"3.985","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9dd0e8bee8da5e493e69d2dc0d26c0d2"} gateway-1 | {"time_local":"24/Sep/2024:10:31:24 +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.250","http_referrer":"","http_user_agent":"node-fetch","requestID":"b125f0e2e5d514e080c611876ca86fad"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4NH0.SZ2x53BeRHR1WKqT1LjcrcvevZddgej467ECAcIIx0I","level":"info","message":"auth send jwt","requestID":"96b174debd52c2cd5ae6e2ea58c72526"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"96b174debd52c2cd5ae6e2ea58c72526","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"96b174debd52c2cd5ae6e2ea58c72526"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.958399,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"96b174debd52c2cd5ae6e2ea58c72526","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173884,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4NH0.SZ2x53BeRHR1WKqT1LjcrcvevZddgej467ECAcIIx0I"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f19ed33b-69f8-4bcc-9441-dc8ff61c9bad' closed"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4134e540-4102-4e69-936c-7a8f4d4c0775' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"96b174debd52c2cd5ae6e2ea58c72526","responseTime":30,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9542567a-7fd2-4c56-bad8-68660ae02f6f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173884.9649572} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"96b174debd52c2cd5ae6e2ea58c72526","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e4db4a87-ffcb-4580-9ec9-b9a515d9548c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173884.9721477} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"96b174debd52c2cd5ae6e2ea58c72526","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"fc6d7723-2dd6-48ba-9f73-563879484e96","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173885.068461} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"250c70fc-bc16-4986-9af6-c3a5ac259d37","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173885.0725307} authorization-1 | {"level":"info","message":"POST /relations/update 200 100ms","method":"POST","requestID":"96b174debd52c2cd5ae6e2ea58c72526","responseTime":100,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.068294424Z"}]},"request_id":"d19592e6-11d9-4ccd-877e-43eedca22615","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173885.0893013} authorization-1 | {"level":"info","message":"POST /relations/query 200 18ms","method":"POST","requestID":"96b174debd52c2cd5ae6e2ea58c72526","responseTime":18,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"96b174debd52c2cd5ae6e2ea58c72526"} device-1 | {"level":"info","message":"POST /devices? 201 238ms","method":"POST","requestID":"96b174debd52c2cd5ae6e2ea58c72526","responseTime":238,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.287","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"96b174debd52c2cd5ae6e2ea58c72526"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4NX0.7lVcUS2Ad-ZyKkGExjJ90HhMpg7BL85oPumX6fKMO9s","level":"info","message":"auth send jwt","requestID":"9f2284b2df258dc1ff80aa09e5757eca"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"9f2284b2df258dc1ff80aa09e5757eca","responseTime":29,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9f2284b2df258dc1ff80aa09e5757eca"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:25Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":3.207938,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"9f2284b2df258dc1ff80aa09e5757eca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173885,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4NX0.7lVcUS2Ad-ZyKkGExjJ90HhMpg7BL85oPumX6fKMO9s"} authorization-1 | {"level":"info","message":"POST /authorize 200 37ms","method":"POST","requestID":"9f2284b2df258dc1ff80aa09e5757eca","responseTime":37,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cf6f7fd5-71df-49d8-92f7-36535ae7318d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173885.2627554} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9f2284b2df258dc1ff80aa09e5757eca","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43cb0a27-2837-46ac-9320-a2b07ff3a051","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173885.269317} authorization-1 | {"level":"info","message":"POST /relations/update 200 38ms","method":"POST","requestID":"9f2284b2df258dc1ff80aa09e5757eca","responseTime":38,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"670d3c11-5be9-42e1-bde6-eb260a82ae7f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173885.3325348} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1a86fac6-9ac2-47b0-a189-1ac73a81fd7f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173885.3331184} authorization-1 | {"level":"info","message":"POST /relations/update 200 65ms","method":"POST","requestID":"9f2284b2df258dc1ff80aa09e5757eca","responseTime":65,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.332498404Z"}]},"request_id":"a605e291-26a6-41ee-82a5-6f1861afa115","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173885.3386753} gateway-1 | {"time_local":"24/Sep/2024:10:31:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.240","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9f2284b2df258dc1ff80aa09e5757eca"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9f2284b2df258dc1ff80aa09e5757eca"} device-1 | {"level":"info","message":"POST /devices? 201 210ms","method":"POST","requestID":"9f2284b2df258dc1ff80aa09e5757eca","responseTime":210,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 31ms","method":"POST","requestID":"9f2284b2df258dc1ff80aa09e5757eca","responseTime":31,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4Nn0.sLvbw7FqzFJxrEJwr77M-5WyErNxtsW2yTTXBIGWVX8","level":"info","message":"auth send jwt","requestID":"556f9b24539690e17fe74fe9d76022dd"} authentication-1 | {"level":"info","message":"GET /auth 200 29ms","method":"GET","requestID":"556f9b24539690e17fe74fe9d76022dd","responseTime":29,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"556f9b24539690e17fe74fe9d76022dd"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:26Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926681,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"556f9b24539690e17fe74fe9d76022dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173886,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4Nn0.sLvbw7FqzFJxrEJwr77M-5WyErNxtsW2yTTXBIGWVX8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"556f9b24539690e17fe74fe9d76022dd","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.068294424Z"}]},"request_id":"1c6efa18-2e39-42c0-9e9a-144edec92a4e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173886.8945324} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"556f9b24539690e17fe74fe9d76022dd","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"73ea276f-c084-4ad5-996a-329284a1ca60","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173886.9283464} authorization-1 | {"level":"info","message":"POST /relations/update 200 36ms","method":"POST","requestID":"556f9b24539690e17fe74fe9d76022dd","responseTime":36,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.068294424Z"}]},"request_id":"eef14420-e9b4-4b6b-9692-019fbfcead0d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173886.9400265} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"556f9b24539690e17fe74fe9d76022dd"} device-1 | {"level":"info","message":"PATCH /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e 200 64ms","method":"PATCH","requestID":"556f9b24539690e17fe74fe9d76022dd","responseTime":64,"status":200,"url":"/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e"} gateway-1 | {"time_local":"24/Sep/2024:10:31:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.094","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"556f9b24539690e17fe74fe9d76022dd"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"556f9b24539690e17fe74fe9d76022dd","responseTime":6,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4Nn0.sLvbw7FqzFJxrEJwr77M-5WyErNxtsW2yTTXBIGWVX8","level":"info","message":"auth send jwt","requestID":"2dd38694cf3b8852304717f827edff3e"} authentication-1 | {"level":"info","message":"GET /auth 200 36ms","method":"GET","requestID":"2dd38694cf3b8852304717f827edff3e","responseTime":36,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2dd38694cf3b8852304717f827edff3e"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:26Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.978575,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2dd38694cf3b8852304717f827edff3e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173886,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4Nn0.sLvbw7FqzFJxrEJwr77M-5WyErNxtsW2yTTXBIGWVX8"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"2dd38694cf3b8852304717f827edff3e","responseTime":11,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:31:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.089","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2dd38694cf3b8852304717f827edff3e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2dd38694cf3b8852304717f827edff3e"} device-1 | {"level":"info","message":"POST /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/websocket 200 53ms","method":"POST","requestID":"2dd38694cf3b8852304717f827edff3e","responseTime":53,"status":200,"url":"/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU","level":"info","message":"auth send jwt","requestID":"4997c17f754f347a328359100ddcddc0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4997c17f754f347a328359100ddcddc0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4997c17f754f347a328359100ddcddc0"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.945625,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"4997c17f754f347a328359100ddcddc0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173887,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4997c17f754f347a328359100ddcddc0","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.332498404Z"}]},"request_id":"553f1466-2794-451c-8539-32828afa256e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.264933} authorization-1 | {"level":"info","message":"POST /relations/query 200 35ms","method":"POST","requestID":"4997c17f754f347a328359100ddcddc0","responseTime":35,"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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9dee2be7-aee1-4554-bbfe-f5ecd91f5986","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.3003004} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4997c17f754f347a328359100ddcddc0","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.332498404Z"}]},"request_id":"ff8874c9-7a8c-4340-9a74-84905908972e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.317056} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4997c17f754f347a328359100ddcddc0"} gateway-1 | {"time_local":"24/Sep/2024:10:31:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.097","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4997c17f754f347a328359100ddcddc0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU","level":"info","message":"auth send jwt","requestID":"0829c3bd1ad7f04127675ee30c17dbb1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0829c3bd1ad7f04127675ee30c17dbb1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"PATCH /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4 200 107ms","method":"PATCH","requestID":"4997c17f754f347a328359100ddcddc0","responseTime":107,"status":200,"url":"/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0829c3bd1ad7f04127675ee30c17dbb1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 47ms","method":"POST","requestID":"4997c17f754f347a328359100ddcddc0","responseTime":47,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.944213,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"0829c3bd1ad7f04127675ee30c17dbb1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173887,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0829c3bd1ad7f04127675ee30c17dbb1","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0829c3bd1ad7f04127675ee30c17dbb1"} device-1 | {"level":"info","message":"POST /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/websocket 200 53ms","method":"POST","requestID":"0829c3bd1ad7f04127675ee30c17dbb1","responseTime":53,"status":200,"url":"/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:31:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.066","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"0829c3bd1ad7f04127675ee30c17dbb1"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU","level":"info","message":"auth send jwt","requestID":"828db0945555498b4e98ce7942f21334"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"828db0945555498b4e98ce7942f21334","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"828db0945555498b4e98ce7942f21334"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.912487,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"828db0945555498b4e98ce7942f21334","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173887,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"828db0945555498b4e98ce7942f21334","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.068294424Z"}]},"request_id":"2ba76af2-acba-460e-a82a-f9132ebe1dab","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.4731789} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"828db0945555498b4e98ce7942f21334","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"828db0945555498b4e98ce7942f21334"} gateway-1 | {"time_local":"24/Sep/2024:10:31:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"828db0945555498b4e98ce7942f21334"} device-1 | {"level":"info","message":"GET /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e? 200 41ms","method":"GET","requestID":"828db0945555498b4e98ce7942f21334","responseTime":41,"status":200,"url":"/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU","level":"info","message":"auth send jwt","requestID":"3d7660f88f7e187084236bcded4176e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3d7660f88f7e187084236bcded4176e0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3d7660f88f7e187084236bcded4176e0"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.91077,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3d7660f88f7e187084236bcded4176e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173887,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3d7660f88f7e187084236bcded4176e0","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.332498404Z"}]},"request_id":"e784ed9d-0efd-44ab-a27a-2be88cec3a4c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.5199995} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3d7660f88f7e187084236bcded4176e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3d7660f88f7e187084236bcded4176e0"} gateway-1 | {"time_local":"24/Sep/2024:10:31:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d7660f88f7e187084236bcded4176e0"} device-1 | {"level":"info","message":"GET /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4? 200 76ms","method":"GET","requestID":"3d7660f88f7e187084236bcded4176e0","responseTime":76,"status":200,"url":"/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU","level":"info","message":"auth send jwt","requestID":"b13e15a5964c83ecbfd75e532d948570"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b13e15a5964c83ecbfd75e532d948570","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b13e15a5964c83ecbfd75e532d948570"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.896201,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"b13e15a5964c83ecbfd75e532d948570","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173887,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b13e15a5964c83ecbfd75e532d948570","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Attempting to run experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Attempting to book experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Successfully booked experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"27ecbc90-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.889855,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"27ecbc90-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173887,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"27ecbc90-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.068294424Z"}]},"request_id":"714ba417-3a67-44f2-a367-5bc47b7e6a5a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.7151203} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"27ecbc90-7a60-11ef-8bac-49f2f0d74a99","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"27eeb860-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915806,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"27eeb860-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173887,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"27eeb860-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.332498404Z"}]},"request_id":"68886ab1-1fa3-4252-aae4-8e3fdebd041b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.728049} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"27eeb860-7a60-11ef-8bac-49f2f0d74a99","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"27ecbc90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e? 200 28ms","method":"GET","requestID":"27ecbc90-7a60-11ef-8bac-49f2f0d74a99","responseTime":28,"status":200,"url":"/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"27eeb860-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4? 200 17ms","method":"GET","requestID":"27eeb860-7a60-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Setting up experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Successfully set up experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"280303b0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.883558,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"280303b0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173887,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"280303b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"28043c30-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Successfully running experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:27Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2809ba70-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.606862,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"28043c30-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173887,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU"} authorization-1 | {"level":"info","message":"POST /authorize 200 39ms","method":"POST","requestID":"28043c30-7a60-11ef-8bac-49f2f0d74a99","responseTime":39,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.068294424Z"}]},"request_id":"e3cef926-3eeb-49cf-becd-417f3b076de1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.9087286} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f9d65e0-5394-4930-bb78-70a18c63d491","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.9136312} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faf9d874c-11e0-442a-ab59-64eb0d92866f#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faf9d874c-11e0-442a-ab59-64eb0d92866f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"2de780e2-eadd-4333-8326-cae14adb363a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.9177752} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c7714fa-bf02-466b-9b8c-8ebd94c28dd1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.9191244} authorization-1 | {"level":"info","message":"POST /relations/query 200 41ms","method":"POST","requestID":"280303b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.053351,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2809ba70-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 40ms","method":"POST","requestID":"2809ba70-7a60-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"280303b0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e? 200 106ms","method":"GET","requestID":"280303b0-7a60-11ef-8bac-49f2f0d74a99","responseTime":106,"status":200,"url":"/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2809ba70-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/signaling 200 64ms","method":"POST","requestID":"2809ba70-7a60-11ef-8bac-49f2f0d74a99","responseTime":64,"status":200,"url":"/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.332498404Z"}]},"request_id":"e62b7092-4262-46a5-b18d-781fca893c07","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173887.9605792} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"28043c30-7a60-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/update 200 70ms","method":"POST","requestID":"b13e15a5964c83ecbfd75e532d948570","responseTime":70,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2814de00-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b13e15a5964c83ecbfd75e532d948570"} experiment-1 | {"level":"info","message":"POST /experiments? 201 418ms","method":"POST","requestID":"b13e15a5964c83ecbfd75e532d948570","responseTime":418,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.423","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b13e15a5964c83ecbfd75e532d948570"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":9.172095,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"725ffaa8-6a6c-44aa-8b1d-a3eb9d1073bd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173888.0083272} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2814de00-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"2814de00-7a60-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"28043c30-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4? 200 175ms","method":"GET","requestID":"28043c30-7a60-11ef-8bac-49f2f0d74a99","responseTime":175,"status":200,"url":"/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"281f8c60-7a60-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4OH0.MnoLfJZx3e3EtajXv05HYTV2dEsLFCJG-0m9wy6_M00","level":"info","message":"auth send jwt","requestID":"7bce3cbd3720f7a8e996cc3227f0d762"} authentication-1 | {"level":"info","message":"GET /auth 200 53ms","method":"GET","requestID":"7bce3cbd3720f7a8e996cc3227f0d762","responseTime":53,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:28Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2814de00-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/signaling 200 103ms","method":"POST","requestID":"2814de00-7a60-11ef-8bac-49f2f0d74a99","responseTime":103,"status":200,"url":"/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/signaling"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b35203c-f537-4b59-9dfd-5b403e46452c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173888.074023} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7bce3cbd3720f7a8e996cc3227f0d762"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.913462,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"281f8c60-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","object_type":"device","rebac_allow":false,"scope_allow":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":"281f8c60-7a60-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.173258,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"7bce3cbd3720f7a8e996cc3227f0d762","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173888,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4OH0.MnoLfJZx3e3EtajXv05HYTV2dEsLFCJG-0m9wy6_M00"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7bce3cbd3720f7a8e996cc3227f0d762","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.068294424Z"}]},"request_id":"2ea75cb7-73c0-4450-8df1-91fb79ecee7e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173888.092037} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"281f8c60-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7bce3cbd3720f7a8e996cc3227f0d762","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/signaling 200 57ms","method":"POST","requestID":"281f8c60-7a60-11ef-8bac-49f2f0d74a99","responseTime":57,"status":200,"url":"/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2828b420-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7bce3cbd3720f7a8e996cc3227f0d762"} device-1 | {"level":"info","message":"GET /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e? 200 53ms","method":"GET","requestID":"7bce3cbd3720f7a8e996cc3227f0d762","responseTime":53,"status":200,"url":"/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.117","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7bce3cbd3720f7a8e996cc3227f0d762"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82d3d255-dcc0-49c6-9a70-e98edaa74011","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173888.1369994} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.572443,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2828b420-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 17ms","method":"POST","requestID":"2828b420-7a60-11ef-8bac-49f2f0d74a99","responseTime":17,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2828b420-7a60-11ef-8bac-49f2f0d74a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4OH0.MnoLfJZx3e3EtajXv05HYTV2dEsLFCJG-0m9wy6_M00","level":"info","message":"auth send jwt","requestID":"491d227c5f0025a1dc7cbfce789ccd97"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Building connection plan","requestID":"b13e15a5964c83ecbfd75e532d948570"} 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":"6f8a5c8c-d789-4cc6-aed3-3c487f67e18d"},{"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":"77f48aac-3a0b-4f98-8740-f99202f881e9"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"407e2fc8-7e70-4f49-ac2c-f0ddfe078118"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b13e15a5964c83ecbfd75e532d948570"} 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/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4"},{"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/9736bc0e-1dae-4fa5-8588-d875d5a5039e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b13e15a5964c83ecbfd75e532d948570"} authentication-1 | {"level":"info","message":"GET /auth 200 19ms","method":"GET","requestID":"491d227c5f0025a1dc7cbfce789ccd97","responseTime":19,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/signaling 200 57ms","method":"POST","requestID":"2828b420-7a60-11ef-8bac-49f2f0d74a99","responseTime":57,"status":200,"url":"/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"28318dc0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"491d227c5f0025a1dc7cbfce789ccd97"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"client_addr":"127.0.0.1:36292","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.966392,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"28318dc0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173887,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4N30.RzzV0g-LbHxvjteUZLr9CSs2l3oeAfR-nHaM8PFXoRU"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"28318dc0-7a60-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"491d227c5f0025a1dc7cbfce789ccd97","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173888,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg4OH0.MnoLfJZx3e3EtajXv05HYTV2dEsLFCJG-0m9wy6_M00"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"491d227c5f0025a1dc7cbfce789ccd97","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.133033,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:25.332498404Z"}]},"request_id":"0bd0ee52-31c9-414c-83a9-16c5815d4a1a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173888.2063227} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"491d227c5f0025a1dc7cbfce789ccd97"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"491d227c5f0025a1dc7cbfce789ccd97","responseTime":9,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:31:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.082","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"491d227c5f0025a1dc7cbfce789ccd97"} device-1 | {"level":"info","message":"GET /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4? 200 27ms","method":"GET","requestID":"491d227c5f0025a1dc7cbfce789ccd97","responseTime":27,"status":200,"url":"/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4?"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"1315564e-4b86-4b8e-9dfc-3e4619e6b6b6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173888.2446904} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8dbd7308-d002-4554-bc8f-932a4f76baf7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173888.2623122} authorization-1 | {"level":"info","message":"POST /relations/update 200 71ms","method":"POST","requestID":"28318dc0-7a60-11ef-8bac-49f2f0d74a99","responseTime":71,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"28318dc0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"28318dc0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799'","requestID":"28318dc0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799'","requestID":"28318dc0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"28318dc0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 123ms","method":"POST","requestID":"28318dc0-7a60-11ef-8bac-49f2f0d74a99","responseTime":123,"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":"28318dc0-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b13e15a5964c83ecbfd75e532d948570"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28534690-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6518acf-439c-4801-a1c1-c42db298ac28","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173888.3835871} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.65608,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"28534690-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","object_type":"device","rebac_allow":false,"scope_allow":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":"28534690-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28534690-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/signaling 200 12ms","method":"POST","requestID":"28534690-7a60-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28559080-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"66f8995e-6e77-4a11-89dc-81ce09c4425c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173888.39801} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.409152,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"28559080-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"28559080-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28559080-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/signaling 200 46ms","method":"POST","requestID":"28559080-7a60-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/signaling"} device-1 | {"device":"9736bc0e-1dae-4fa5-8588-d875d5a5039e","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":"66ce040d-a612-478f-ba11-21cf49528799","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","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 | {"device":"0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","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":"0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","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 | {"data":{"peerconnection":"66ce040d-a612-478f-ba11-21cf49528799","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","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":"0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","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/66ce040d-a612-478f-ba11-21cf49528799' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"66ce040d-a612-478f-ba11-21cf49528799","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} 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/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4"},{"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/9736bc0e-1dae-4fa5-8588-d875d5a5039e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799"}}},"level":"info","message":"received a callback","requestID":"850205beffd24b199a95614db3343e34"} device-1 | {"device":"9736bc0e-1dae-4fa5-8588-d875d5a5039e","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":"9736bc0e-1dae-4fa5-8588-d875d5a5039e","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":"9736bc0e-1dae-4fa5-8588-d875d5a5039e","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":"auth error No token found","requestID":"850205beffd24b199a95614db3343e34","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 5ms","method":"GET","requestID":"850205beffd24b199a95614db3343e34","responseTime":5,"status":200,"url":"/auth"} device-1 | {"device":"0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","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":"9736bc0e-1dae-4fa5-8588-d875d5a5039e","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 | {"data":{"peerconnection":"66ce040d-a612-478f-ba11-21cf49528799","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.047","http_referrer":"","http_user_agent":"node-fetch","requestID":"850205beffd24b199a95614db3343e34"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 45ms","method":"POST","requestID":"850205beffd24b199a95614db3343e34","responseTime":45,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","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":"66ce040d-a612-478f-ba11-21cf49528799","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9736bc0e-1dae-4fa5-8588-d875d5a5039e","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/66ce040d-a612-478f-ba11-21cf49528799' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"66ce040d-a612-478f-ba11-21cf49528799","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d823ce334a4783572be9a5f42ca10a03","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":"d823ce334a4783572be9a5f42ca10a03","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/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4"},{"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/9736bc0e-1dae-4fa5-8588-d875d5a5039e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799"}}},"level":"info","message":"received a callback","requestID":"d823ce334a4783572be9a5f42ca10a03"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"29a80120-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.081756,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F66ce040d-a612-478f-ba11-21cf49528799","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d472d72c-f9cb-4001-8afc-e2bcff98ccb7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173890.6171978} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"29a80120-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799","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 32ms","method":"POST","requestID":"29a80120-7a60-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"29a80120-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/66ce040d-a612-478f-ba11-21cf49528799 200 51ms","method":"GET","requestID":"29a80120-7a60-11ef-8bac-49f2f0d74a99","responseTime":51,"status":200,"url":"/peerconnections/66ce040d-a612-478f-ba11-21cf49528799"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"29b1c520-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 81ms","method":"POST","requestID":"d823ce334a4783572be9a5f42ca10a03","responseTime":81,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.355537,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"844da52f-4158-42f6-9486-8d31976fe4ea","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173890.6791508} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"29b1c520-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"29b1c520-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5MH0.S2XtbrnEk5B38Oxw4ELRKrvm55_B9nApTYM4Beg1LrY","level":"info","message":"auth send jwt","requestID":"74a56f64cb8215978befa7736be75069"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"d823ce334a4783572be9a5f42ca10a03"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"29b1c520-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/signaling 200 39ms","method":"POST","requestID":"29b1c520-7a60-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"74a56f64cb8215978befa7736be75069","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/af9d874c-11e0-442a-ab59-64eb0d92866f","requestID":"74a56f64cb8215978befa7736be75069"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"29b87be0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.960978,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2e737bb-d144-4395-8c4f-7dc3531234d9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173890.7234797} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"29b87be0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","object_type":"device","rebac_allow":false,"scope_allow":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":"29b87be0-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:30Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"29b87be0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/signaling 200 20ms","method":"POST","requestID":"29b87be0-7a60-11ef-8bac-49f2f0d74a99","responseTime":20,"status":200,"url":"/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/signaling"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.868649,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"74a56f64cb8215978befa7736be75069","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173890,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5MH0.S2XtbrnEk5B38Oxw4ELRKrvm55_B9nApTYM4Beg1LrY"} authorization-1 | {"level":"info","message":"POST /authorize 200 39ms","method":"POST","requestID":"74a56f64cb8215978befa7736be75069","responseTime":39,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:31:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/af9d874c-11e0-442a-ab59-64eb0d92866f HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"74a56f64cb8215978befa7736be75069"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/af9d874c-11e0-442a-ab59-64eb0d92866f","requestID":"74a56f64cb8215978befa7736be75069"} experiment-1 | {"level":"info","message":"GET /experiments/af9d874c-11e0-442a-ab59-64eb0d92866f 200 56ms","method":"GET","requestID":"74a56f64cb8215978befa7736be75069","responseTime":56,"status":200,"url":"/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5MH0.S2XtbrnEk5B38Oxw4ELRKrvm55_B9nApTYM4Beg1LrY","level":"info","message":"auth send jwt","requestID":"021a05980ac8a3b772efc8aedca1020e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"021a05980ac8a3b772efc8aedca1020e","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.952278,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:30Z"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/af9d874c-11e0-442a-ab59-64eb0d92866f","requestID":"021a05980ac8a3b772efc8aedca1020e"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"021a05980ac8a3b772efc8aedca1020e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173890,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5MH0.S2XtbrnEk5B38Oxw4ELRKrvm55_B9nApTYM4Beg1LrY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"021a05980ac8a3b772efc8aedca1020e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"29c489d0-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Attempting to finish experiment","requestID":"021a05980ac8a3b772efc8aedca1020e"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.957912,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"29c489d0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173890,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5MH0.S2XtbrnEk5B38Oxw4ELRKrvm55_B9nApTYM4Beg1LrY"} authorization-1 | {"level":"info","message":"POST /authorize 200 36ms","method":"POST","requestID":"29c489d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":36,"status":200,"url":"/authorize"} device-1 | {"device":"0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","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":"0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","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":"0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","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"}} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F66ce040d-a612-478f-ba11-21cf49528799': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F66ce040d-a612-478f-ba11-21cf49528799","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"d95ae897-b960-40e5-bd5e-5e876018ddef","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173890.8409886} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2cd0052-3e8f-4f49-88e9-13c9ba7c0f35","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173890.8425126} device-1 | {"device":"9736bc0e-1dae-4fa5-8588-d875d5a5039e","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":"9736bc0e-1dae-4fa5-8588-d875d5a5039e","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":"9736bc0e-1dae-4fa5-8588-d875d5a5039e","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"}} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"29c489d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"66ce040d-a612-478f-ba11-21cf49528799","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"77e8881d8f2cc044130de2ca152e6b64","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":"77e8881d8f2cc044130de2ca152e6b64","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"29c489d0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/66ce040d-a612-478f-ba11-21cf49528799 204 56ms","method":"DELETE","requestID":"29c489d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":56,"status":204,"url":"/peerconnections/66ce040d-a612-478f-ba11-21cf49528799"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9d34cceb1295a25e9bb568eb64d3b149","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/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4"},{"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/9736bc0e-1dae-4fa5-8588-d875d5a5039e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799"}}},"level":"info","message":"received a callback","requestID":"77e8881d8f2cc044130de2ca152e6b64"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9d34cceb1295a25e9bb568eb64d3b149","responseTime":5,"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/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4"},{"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/9736bc0e-1dae-4fa5-8588-d875d5a5039e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/66ce040d-a612-478f-ba11-21cf49528799"}}},"level":"info","message":"received a callback","requestID":"9d34cceb1295a25e9bb568eb64d3b149"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"},"level":"info","message":"Successfully finished experiment","requestID":"021a05980ac8a3b772efc8aedca1020e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"29d4dd80-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"042f7573-8aa7-488b-a67f-0840da5ddf7d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173890.9119222} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.523703,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"29d4dd80-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4","object_type":"device","rebac_allow":false,"scope_allow":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":"29d4dd80-7a60-11ef-8bac-49f2f0d74a99","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"29d4dd80-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/signaling 200 14ms","method":"POST","requestID":"29d4dd80-7a60-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"29db4620-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.120922,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:30Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9736bc0e-1dae-4fa5-8588-d875d5a5039e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2e601e2-130d-4aa9-b637-022c8361a5c3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173890.9516015} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"29db4620-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e","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":"29db4620-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/signaling 200 20ms","method":"POST","requestID":"29db4620-7a60-11ef-8bac-49f2f0d74a99","responseTime":20,"status":200,"url":"/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"29db4620-7a60-11ef-8bac-49f2f0d74a99","responseTime":29,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faf9d874c-11e0-442a-ab59-64eb0d92866f': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Faf9d874c-11e0-442a-ab59-64eb0d92866f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"7dced132-1b49-4a6b-8b1b-aa627cda1025","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173890.961692} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82729029-fc3c-46a5-bfd6-46a07ecb6fd0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173890.9628916} authorization-1 | {"level":"info","message":"POST /relations/update 200 99ms","method":"POST","requestID":"021a05980ac8a3b772efc8aedca1020e","responseTime":99,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/af9d874c-11e0-442a-ab59-64eb0d92866f","requestID":"021a05980ac8a3b772efc8aedca1020e"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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":"4.089","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"31863739e4a4bbb992583c0a7379b393"} gateway-1 | {"time_local":"24/Sep/2024:10:31:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"3.711","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9a491f95ab9764b5dc8b584aab9193fe"} gateway-1 | {"time_local":"24/Sep/2024:10:31:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/af9d874c-11e0-442a-ab59-64eb0d92866f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.349","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"021a05980ac8a3b772efc8aedca1020e"} experiment-1 | {"level":"info","message":"DELETE /experiments/af9d874c-11e0-442a-ab59-64eb0d92866f 204 351ms","method":"DELETE","requestID":"021a05980ac8a3b772efc8aedca1020e","responseTime":351,"status":204,"url":"/experiments/af9d874c-11e0-442a-ab59-64eb0d92866f"} device-1 | {"level":"info","message":"postDevices called","requestID":"91d2d415bee9c9cc810cd8c63a7dffa6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5MX0.XLNcPE7rKxyoWxhabRlBZykoe3nBiMIvW2Nh7pixN3U","level":"info","message":"auth send jwt","requestID":"91d2d415bee9c9cc810cd8c63a7dffa6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"91d2d415bee9c9cc810cd8c63a7dffa6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 281ms","method":"POST","requestID":"77e8881d8f2cc044130de2ca152e6b64","responseTime":281,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 282ms","method":"POST","requestID":"9d34cceb1295a25e9bb568eb64d3b149","responseTime":282,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.291","http_referrer":"","http_user_agent":"node-fetch","requestID":"77e8881d8f2cc044130de2ca152e6b64"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.289","http_referrer":"","http_user_agent":"node-fetch","requestID":"9d34cceb1295a25e9bb568eb64d3b149"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:31Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.009334,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"91d2d415bee9c9cc810cd8c63a7dffa6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173891,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5MX0.XLNcPE7rKxyoWxhabRlBZykoe3nBiMIvW2Nh7pixN3U"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"91d2d415bee9c9cc810cd8c63a7dffa6","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/0f7fcb03-5c29-44c5-b72b-7f8f1f2e06c4' closed"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9736bc0e-1dae-4fa5-8588-d875d5a5039e' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6f92134e-5300-4e41-b0ee-c9372dce045b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173891.202116} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"91d2d415bee9c9cc810cd8c63a7dffa6","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9085202e-cdfa-404e-9913-e7490e1c7909","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173891.244867} authorization-1 | {"level":"info","message":"POST /relations/update 200 36ms","method":"POST","requestID":"91d2d415bee9c9cc810cd8c63a7dffa6","responseTime":36,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"6fdfbbcb-a1b7-4b27-8fac-32e690a946b0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173891.277807} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9ad53d5-60d9-49ce-80ae-40b39f77c415","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173891.2780316} authorization-1 | {"level":"info","message":"POST /relations/update 200 68ms","method":"POST","requestID":"91d2d415bee9c9cc810cd8c63a7dffa6","responseTime":68,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:31.277769375Z"}]},"request_id":"1cfafefb-89c0-4b93-8ac9-46f2e7e7aee0","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173891.28304} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"91d2d415bee9c9cc810cd8c63a7dffa6"} device-1 | {"level":"info","message":"POST /devices? 201 176ms","method":"POST","requestID":"91d2d415bee9c9cc810cd8c63a7dffa6","responseTime":176,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 29ms","method":"POST","requestID":"91d2d415bee9c9cc810cd8c63a7dffa6","responseTime":29,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.183","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91d2d415bee9c9cc810cd8c63a7dffa6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5MX0.XLNcPE7rKxyoWxhabRlBZykoe3nBiMIvW2Nh7pixN3U","level":"info","message":"auth send jwt","requestID":"49dab34bdf1bc89cade0910dd3eabacc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"49dab34bdf1bc89cade0910dd3eabacc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"49dab34bdf1bc89cade0910dd3eabacc"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:31Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.268274,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"49dab34bdf1bc89cade0910dd3eabacc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173891,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5MX0.XLNcPE7rKxyoWxhabRlBZykoe3nBiMIvW2Nh7pixN3U"} authorization-1 | {"level":"info","message":"POST /authorize 200 46ms","method":"POST","requestID":"49dab34bdf1bc89cade0910dd3eabacc","responseTime":46,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"165cfb2d-2896-4ee6-8f8a-e2c06718f529","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173891.3952274} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"49dab34bdf1bc89cade0910dd3eabacc","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76132a9d-9d74-4d44-acff-9bbe269ca820","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173891.428607} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"49dab34bdf1bc89cade0910dd3eabacc","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"0224a5b1-2ef6-45c1-a4c9-ff6f414b17f1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173891.4504094} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"555e372a-d965-486e-a270-20808b68afca","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173891.4516733} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"49dab34bdf1bc89cade0910dd3eabacc","responseTime":27,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:31.450372176Z"}]},"request_id":"07f10dbf-915e-4841-853b-2324d5d525f3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173891.4891486} authorization-1 | {"level":"info","message":"POST /relations/query 200 38ms","method":"POST","requestID":"49dab34bdf1bc89cade0910dd3eabacc","responseTime":38,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"49dab34bdf1bc89cade0910dd3eabacc"} device-1 | {"level":"info","message":"POST /devices? 201 173ms","method":"POST","requestID":"49dab34bdf1bc89cade0910dd3eabacc","responseTime":173,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"49dab34bdf1bc89cade0910dd3eabacc"} gateway-1 | {"time_local":"24/Sep/2024:10:31:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/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":"c8571ea58c282d91f9d3f1533f92456f"} device-1 | {"level":"info","message":"OPTIONS /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/websocket 200 1ms","method":"OPTIONS","requestID":"c8571ea58c282d91f9d3f1533f92456f","responseTime":1,"status":200,"url":"/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c8571ea58c282d91f9d3f1533f92456f","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 4ms","method":"GET","requestID":"c8571ea58c282d91f9d3f1533f92456f","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NH0.tB8YKOVtBnRRbeJNaH9Jud-VIGUaXHOY3HzD8xIEtLc","level":"info","message":"auth send jwt","requestID":"c7ee45e5db9b6edf11c52e2f48576967"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c7ee45e5db9b6edf11c52e2f48576967"} authentication-1 | {"level":"info","message":"GET /auth 200 36ms","method":"GET","requestID":"c7ee45e5db9b6edf11c52e2f48576967","responseTime":36,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:34Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.005425,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c7ee45e5db9b6edf11c52e2f48576967","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173894,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NH0.tB8YKOVtBnRRbeJNaH9Jud-VIGUaXHOY3HzD8xIEtLc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7ee45e5db9b6edf11c52e2f48576967","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c7ee45e5db9b6edf11c52e2f48576967"} gateway-1 | {"time_local":"24/Sep/2024:10:31:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.102","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":"c7ee45e5db9b6edf11c52e2f48576967"} device-1 | {"level":"info","message":"POST /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/websocket 200 59ms","method":"POST","requestID":"c7ee45e5db9b6edf11c52e2f48576967","responseTime":59,"status":200,"url":"/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"91150faf6844fd7f0faeff0f5148083e","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":"91150faf6844fd7f0faeff0f5148083e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:31:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3a301ed4-c675-4c33-8ac8-0b309865e969/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":"91150faf6844fd7f0faeff0f5148083e"} device-1 | {"level":"info","message":"OPTIONS /devices/3a301ed4-c675-4c33-8ac8-0b309865e969/websocket 200 1ms","method":"OPTIONS","requestID":"91150faf6844fd7f0faeff0f5148083e","responseTime":1,"status":200,"url":"/devices/3a301ed4-c675-4c33-8ac8-0b309865e969/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NH0.tB8YKOVtBnRRbeJNaH9Jud-VIGUaXHOY3HzD8xIEtLc","level":"info","message":"auth send jwt","requestID":"c5fb79401209c6d2ec945348ec3f975b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c5fb79401209c6d2ec945348ec3f975b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c5fb79401209c6d2ec945348ec3f975b"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:34Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.089545,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"c5fb79401209c6d2ec945348ec3f975b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173894,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NH0.tB8YKOVtBnRRbeJNaH9Jud-VIGUaXHOY3HzD8xIEtLc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c5fb79401209c6d2ec945348ec3f975b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c5fb79401209c6d2ec945348ec3f975b"} device-1 | {"level":"info","message":"POST /devices/3a301ed4-c675-4c33-8ac8-0b309865e969/websocket 200 101ms","method":"POST","requestID":"c5fb79401209c6d2ec945348ec3f975b","responseTime":101,"status":200,"url":"/devices/3a301ed4-c675-4c33-8ac8-0b309865e969/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:31:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3a301ed4-c675-4c33-8ac8-0b309865e969/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.108","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":"c5fb79401209c6d2ec945348ec3f975b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc","level":"info","message":"auth send jwt","requestID":"7d38870e56f19938af09ade7266b3e7d"} authentication-1 | {"level":"info","message":"GET /auth 200 27ms","method":"GET","requestID":"7d38870e56f19938af09ade7266b3e7d","responseTime":27,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d38870e56f19938af09ade7266b3e7d"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.044701,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"7d38870e56f19938af09ade7266b3e7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173895,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7d38870e56f19938af09ade7266b3e7d","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:31.277769375Z"}]},"request_id":"5c829fd3-bea3-488b-b536-44753c984cde","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.0593266} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7d38870e56f19938af09ade7266b3e7d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d38870e56f19938af09ade7266b3e7d"} gateway-1 | {"time_local":"24/Sep/2024:10:31:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3a301ed4-c675-4c33-8ac8-0b309865e969? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d38870e56f19938af09ade7266b3e7d"} device-1 | {"level":"info","message":"GET /devices/3a301ed4-c675-4c33-8ac8-0b309865e969? 200 15ms","method":"GET","requestID":"7d38870e56f19938af09ade7266b3e7d","responseTime":15,"status":200,"url":"/devices/3a301ed4-c675-4c33-8ac8-0b309865e969?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc","level":"info","message":"auth send jwt","requestID":"abdb2c6a31084291994791d8cd9e2d69"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"abdb2c6a31084291994791d8cd9e2d69"} authentication-1 | {"level":"info","message":"GET /auth 200 32ms","method":"GET","requestID":"abdb2c6a31084291994791d8cd9e2d69","responseTime":32,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.01427,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"abdb2c6a31084291994791d8cd9e2d69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173895,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"abdb2c6a31084291994791d8cd9e2d69","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:31.450372176Z"}]},"request_id":"c5697a90-66d5-4e77-bfad-a0815b705db3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.1140354} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"abdb2c6a31084291994791d8cd9e2d69","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"abdb2c6a31084291994791d8cd9e2d69"} gateway-1 | {"time_local":"24/Sep/2024:10:31:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.080","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"abdb2c6a31084291994791d8cd9e2d69"} device-1 | {"level":"info","message":"GET /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f? 200 48ms","method":"GET","requestID":"abdb2c6a31084291994791d8cd9e2d69","responseTime":48,"status":200,"url":"/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc","level":"info","message":"auth send jwt","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"1f9b72c079f384d4da4e74ff0ea2562e","responseTime":8,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.960552,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1f9b72c079f384d4da4e74ff0ea2562e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173895,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1f9b72c079f384d4da4e74ff0ea2562e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Attempting to run experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Attempting to book experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Successfully booked experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2c6bb500-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.962596,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2c6bb500-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173895,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2c6bb500-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2c6dfef0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:31.277769375Z"}]},"request_id":"6cbb7466-3f15-4e5a-8878-432eb7f5e8e7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.288496} authorization-1 | {"level":"info","message":"POST /relations/query 200 30ms","method":"POST","requestID":"2c6bb500-7a60-11ef-8bac-49f2f0d74a99","responseTime":30,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.93204,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2c6dfef0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173895,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2c6dfef0-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:31.450372176Z"}]},"request_id":"c5e93da7-01d3-415f-aa44-cdc3661b687f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.3057728} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2c6dfef0-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2c6bb500-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/3a301ed4-c675-4c33-8ac8-0b309865e969? 200 61ms","method":"GET","requestID":"2c6bb500-7a60-11ef-8bac-49f2f0d74a99","responseTime":61,"status":200,"url":"/devices/3a301ed4-c675-4c33-8ac8-0b309865e969?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2c6dfef0-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Setting up experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} device-1 | {"level":"info","message":"GET /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f? 200 89ms","method":"GET","requestID":"2c6dfef0-7a60-11ef-8bac-49f2f0d74a99","responseTime":89,"status":200,"url":"/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Successfully set up experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2c8a3980-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2c8a87a0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2c902cf0-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Successfully running experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915348,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2c8a3980-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173895,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc"} authorization-1 | {"level":"info","message":"POST /authorize 200 52ms","method":"POST","requestID":"2c8a3980-7a60-11ef-8bac-49f2f0d74a99","responseTime":52,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:31.277769375Z"}]},"request_id":"401586e8-4c28-451e-bca4-a9be54574a09","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.533099} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2c8a3980-7a60-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.584047,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2c8a3980-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} device-1 | {"level":"info","message":"GET /devices/3a301ed4-c675-4c33-8ac8-0b309865e969? 200 93ms","method":"GET","requestID":"2c8a3980-7a60-11ef-8bac-49f2f0d74a99","responseTime":93,"status":200,"url":"/devices/3a301ed4-c675-4c33-8ac8-0b309865e969?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2c8a87a0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173895,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc"} authorization-1 | {"level":"info","message":"POST /authorize 200 50ms","method":"POST","requestID":"2c8a87a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":50,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.440913,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a66cf0fa-f5f4-4553-a0f4-fa6509deed21","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.5448253} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2c902cf0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 53ms","method":"POST","requestID":"2c902cf0-7a60-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2c902cf0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/3a301ed4-c675-4c33-8ac8-0b309865e969/signaling 200 104ms","method":"POST","requestID":"2c902cf0-7a60-11ef-8bac-49f2f0d74a99","responseTime":104,"status":200,"url":"/devices/3a301ed4-c675-4c33-8ac8-0b309865e969/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2ca0cec0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:31.450372176Z"}]},"request_id":"8284a99f-84d6-41be-be1c-a4ae42cd547c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.5889664} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F77d71262-3a05-4f2a-8715-a8b36b710958#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F77d71262-3a05-4f2a-8715-a8b36b710958","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"627c98da-f68d-4465-a061-bf13ba8fd0f3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.5892973} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa40197c-5295-48ae-b72d-eedffefd6e09","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.5902233} authorization-1 | {"level":"info","message":"POST /relations/query 200 63ms","method":"POST","requestID":"2c8a87a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":63,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/update 200 113ms","method":"POST","requestID":"1f9b72c079f384d4da4e74ff0ea2562e","responseTime":113,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2c8a87a0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f? 200 230ms","method":"GET","requestID":"2c8a87a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":230,"status":200,"url":"/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2cae3c40-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.527181,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a81b497-e929-45c2-aced-346cc13ff27f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.6732025} experiment-1 | {"data":{"experiment":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 535ms","method":"POST","requestID":"1f9b72c079f384d4da4e74ff0ea2562e","responseTime":535,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.541","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2ca0cec0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 75ms","method":"POST","requestID":"2ca0cec0-7a60-11ef-8bac-49f2f0d74a99","responseTime":75,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc","level":"info","message":"auth send jwt","requestID":"afa230c82f170ea7ec666a909602dfb9"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"afa230c82f170ea7ec666a909602dfb9","responseTime":28,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"afa230c82f170ea7ec666a909602dfb9"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cabce036-95ab-4c2e-8ae1-f0b0203d78bb","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.7382684} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2ca0cec0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/signaling 200 146ms","method":"POST","requestID":"2ca0cec0-7a60-11ef-8bac-49f2f0d74a99","responseTime":146,"status":200,"url":"/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/signaling"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":27.199831,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":36.842152,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"afa230c82f170ea7ec666a909602dfb9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173895,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc"} authorization-1 | {"level":"info","message":"POST /authorize 200 36ms","method":"POST","requestID":"afa230c82f170ea7ec666a909602dfb9","responseTime":36,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2cae3c40-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 54ms","method":"POST","requestID":"2cae3c40-7a60-11ef-8bac-49f2f0d74a99","responseTime":54,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2cae3c40-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/3a301ed4-c675-4c33-8ac8-0b309865e969/signaling 200 106ms","method":"POST","requestID":"2cae3c40-7a60-11ef-8bac-49f2f0d74a99","responseTime":106,"status":200,"url":"/devices/3a301ed4-c675-4c33-8ac8-0b309865e969/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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:31.277769375Z"}]},"request_id":"7f7c6222-6f03-4998-90c7-a25d2fc28dbd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.8169034} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2cc323d0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /relations/query 200 34ms","method":"POST","requestID":"afa230c82f170ea7ec666a909602dfb9","responseTime":34,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.807319,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3f16c1f1-bfcb-42af-a147-6b5b3ac08168","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.8327308} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"afa230c82f170ea7ec666a909602dfb9"} gateway-1 | {"time_local":"24/Sep/2024:10:31:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3a301ed4-c675-4c33-8ac8-0b309865e969? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"afa230c82f170ea7ec666a909602dfb9"} device-1 | {"level":"info","message":"GET /devices/3a301ed4-c675-4c33-8ac8-0b309865e969? 200 114ms","method":"GET","requestID":"afa230c82f170ea7ec666a909602dfb9","responseTime":114,"status":200,"url":"/devices/3a301ed4-c675-4c33-8ac8-0b309865e969?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2cc323d0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"2cc323d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc","level":"info","message":"auth send jwt","requestID":"ea8978130c43da9acfb1a332d02b6cf8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2cc323d0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/signaling 200 55ms","method":"POST","requestID":"2cc323d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":55,"status":200,"url":"/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Building connection plan","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"72f3e5ef-30e9-4611-b4a0-ba7d122d4e21"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"7be7522b-02d1-4bed-8c21-80b8d9802f30"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"c0a05683-5660-4a05-a3f6-a07d79b33bf2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ea8978130c43da9acfb1a332d02b6cf8"} authentication-1 | {"level":"info","message":"GET /auth 200 20ms","method":"GET","requestID":"ea8978130c43da9acfb1a332d02b6cf8","responseTime":20,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2cd17bb0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:36296","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.060563,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.104357,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ea8978130c43da9acfb1a332d02b6cf8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173895,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ea8978130c43da9acfb1a332d02b6cf8","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2cd17bb0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173895,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5NX0.yRztN4JAuUV8slAi6L2t97RWw1KO-Xbqj_sk3Y-mfVc"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"2cd17bb0-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:31.450372176Z"}]},"request_id":"f1d7827a-5f90-4971-8221-012d7ce867ea","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.934586} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ea8978130c43da9acfb1a332d02b6cf8"} gateway-1 | {"time_local":"24/Sep/2024:10:31:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ea8978130c43da9acfb1a332d02b6cf8"} device-1 | {"level":"info","message":"GET /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f? 200 85ms","method":"GET","requestID":"ea8978130c43da9acfb1a332d02b6cf8","responseTime":85,"status":200,"url":"/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 37ms","method":"POST","requestID":"ea8978130c43da9acfb1a332d02b6cf8","responseTime":37,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"813c8fd9-768e-49a7-9893-736e6bca4447","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.9788027} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e577106d-36d9-4519-96fe-e8e0717c2e52","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173895.9803247} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"2cd17bb0-7a60-11ef-8bac-49f2f0d74a99","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2cd17bb0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2cd17bb0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c'","requestID":"2cd17bb0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c'","requestID":"2cd17bb0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2cd17bb0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 164ms","method":"POST","requestID":"2cd17bb0-7a60-11ef-8bac-49f2f0d74a99","responseTime":164,"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":"2cd17bb0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c","device":"3a301ed4-c675-4c33-8ac8-0b309865e969","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} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c","device":"5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","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} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1f9b72c079f384d4da4e74ff0ea2562e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d058400-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"device":"5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.837472,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fdd27526-5f6a-4013-b0f1-12c0e89d9397","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173896.262546} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2d058400-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 40ms","method":"POST","requestID":"2d058400-7a60-11ef-8bac-49f2f0d74a99","responseTime":40,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d058400-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/3a301ed4-c675-4c33-8ac8-0b309865e969/signaling 200 54ms","method":"POST","requestID":"2d058400-7a60-11ef-8bac-49f2f0d74a99","responseTime":54,"status":200,"url":"/devices/3a301ed4-c675-4c33-8ac8-0b309865e969/signaling"} device-1 | {"device":"3a301ed4-c675-4c33-8ac8-0b309865e969","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3a301ed4-c675-4c33-8ac8-0b309865e969","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d0e0f80-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e0b32e59-2442-47e2-bff2-1b7644be94b9","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173896.3450935} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":28.292924,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2d0e0f80-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 39ms","method":"POST","requestID":"2d0e0f80-7a60-11ef-8bac-49f2f0d74a99","responseTime":39,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 6472505649750832551 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:IPBw\r\na=ice-pwd:0FMupsEBQNia9eYGDgZi7XgN\r\na=ice-options:trickle\r\na=fingerprint:sha-256 70:76:FF:E9:D1:B0:E9:DD:97:E7:63:12:2C:74:99:37:CF:03:AD:0C:C2:D2:D9:61:40:8D:79:9D:EB:48:9A:4F\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d0e0f80-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/signaling 200 84ms","method":"POST","requestID":"2d0e0f80-7a60-11ef-8bac-49f2f0d74a99","responseTime":84,"status":200,"url":"/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 6023069377431527681 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:R2xL\r\na=ice-pwd:KqqewlYRNjV5diev6x+N8q56\r\na=ice-options:trickle\r\na=fingerprint:sha-256 CB:29:32:23:7F:B9:1C:26:5D:34:0B:7F:28:FF:5D:4E:BE:93:E6:F3:4E:7B:40:CE:1B:F7:48:E4:D2:42:92:CE\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"3a301ed4-c675-4c33-8ac8-0b309865e969","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3638317155 1 udp 2113937151 95f80479-de16-44a9-b8ab-102a7c0bb280.local 36848 typ host generation 0 ufrag R2xL network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3a301ed4-c675-4c33-8ac8-0b309865e969","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1274540400 1 udp 1677729535 141.24.211.56 36848 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag R2xL network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3a301ed4-c675-4c33-8ac8-0b309865e969","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/3a301ed4-c675-4c33-8ac8-0b309865e969'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969'"} device-1 | {"content":{"candidate":"candidate:2564018591 1 udp 2113937151 0c9add35-de50-4584-96a7-5a98b6dbe5bd.local 56666 typ host generation 0 ufrag IPBw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:200831116 1 udp 1677729535 141.24.211.56 56666 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag IPBw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3050621822 1 udp 33562623 141.24.210.113 62659 typ relay raddr 141.24.211.56 rport 56666 generation 0 ufrag IPBw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","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/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f'"} device-1 | {"device":"5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","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/2f5fb473-0f99-438e-8a85-20aa4f649c0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f5fb473-0f99-438e-8a85-20aa4f649c0c","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","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":"8523ea37e519a6e4c1f9250543928430","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":"8523ea37e519a6e4c1f9250543928430","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"3a301ed4-c675-4c33-8ac8-0b309865e969","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"3a301ed4-c675-4c33-8ac8-0b309865e969","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"3a301ed4-c675-4c33-8ac8-0b309865e969","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":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c"}}},"level":"info","message":"received a callback","requestID":"8523ea37e519a6e4c1f9250543928430"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"8523ea37e519a6e4c1f9250543928430","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"8523ea37e519a6e4c1f9250543928430"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f5fb473-0f99-438e-8a85-20aa4f649c0c","statusDeviceA":"new","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c310d913d01498b5a8fa34d428264561","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":"c310d913d01498b5a8fa34d428264561","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/3a301ed4-c675-4c33-8ac8-0b309865e969"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f"}],"status":"new","type":"webrtc","url":"http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c"}}},"level":"info","message":"received a callback","requestID":"c310d913d01498b5a8fa34d428264561"} device-1 | {"device":"3a301ed4-c675-4c33-8ac8-0b309865e969","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"c310d913d01498b5a8fa34d428264561"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"c310d913d01498b5a8fa34d428264561","responseTime":33,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f5fb473-0f99-438e-8a85-20aa4f649c0c","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} 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/3a301ed4-c675-4c33-8ac8-0b309865e969"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c"}}},"level":"info","message":"received a callback","requestID":"4a05e357edd50cf3a0a29410eb6bb464"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4a05e357edd50cf3a0a29410eb6bb464","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":"4a05e357edd50cf3a0a29410eb6bb464","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5Nn0.C-Mj5o9en8-YsXvflMXteCkQ4XRmNEpJkl3uA9yN9w4","level":"info","message":"auth send jwt","requestID":"1546256538db86c5447659039f0a26ab"} authentication-1 | {"level":"info","message":"GET /auth 200 31ms","method":"GET","requestID":"1546256538db86c5447659039f0a26ab","responseTime":31,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/77d71262-3a05-4f2a-8715-a8b36b710958","requestID":"1546256538db86c5447659039f0a26ab"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.033575,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"1546256538db86c5447659039f0a26ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173896,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5Nn0.C-Mj5o9en8-YsXvflMXteCkQ4XRmNEpJkl3uA9yN9w4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1546256538db86c5447659039f0a26ab","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f5fb473-0f99-438e-8a85-20aa4f649c0c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"4a05e357edd50cf3a0a29410eb6bb464","responseTime":39,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d025ef796598cd09dbadad0a07f39e16","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)"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.052","http_referrer":"","http_user_agent":"node-fetch","requestID":"4a05e357edd50cf3a0a29410eb6bb464"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d025ef796598cd09dbadad0a07f39e16","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/3a301ed4-c675-4c33-8ac8-0b309865e969"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c"}}},"level":"info","message":"received a callback","requestID":"d025ef796598cd09dbadad0a07f39e16"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/77d71262-3a05-4f2a-8715-a8b36b710958","requestID":"1546256538db86c5447659039f0a26ab"} experiment-1 | {"level":"info","message":"GET /experiments/77d71262-3a05-4f2a-8715-a8b36b710958 200 59ms","method":"GET","requestID":"1546256538db86c5447659039f0a26ab","responseTime":59,"status":200,"url":"/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"} gateway-1 | {"time_local":"24/Sep/2024:10:31:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/77d71262-3a05-4f2a-8715-a8b36b710958 HTTP/1.1","status": "200","body_bytes_sent":"878","request_time":"0.092","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1546256538db86c5447659039f0a26ab"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"2d4fd370-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f5fb473-0f99-438e-8a85-20aa4f649c0c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"74a46d9e-54c3-47e7-826f-32c1308e54b8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173896.7498696} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.224967,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2d4fd370-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c","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 32ms","method":"POST","requestID":"2d4fd370-7a60-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"2d4fd370-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c 200 38ms","method":"GET","requestID":"2d4fd370-7a60-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 68ms","method":"POST","requestID":"d025ef796598cd09dbadad0a07f39e16","responseTime":68,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"d025ef796598cd09dbadad0a07f39e16"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d5c7da0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3f598cb-68f9-43ee-a936-a3c675c7fc6f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173896.8318663} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.793285,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2d5c7da0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","object_type":"device","rebac_allow":false,"scope_allow":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":"2d5c7da0-7a60-11ef-8bac-49f2f0d74a99","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d5c7da0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/3a301ed4-c675-4c33-8ac8-0b309865e969/signaling 200 21ms","method":"POST","requestID":"2d5c7da0-7a60-11ef-8bac-49f2f0d74a99","responseTime":21,"status":200,"url":"/devices/3a301ed4-c675-4c33-8ac8-0b309865e969/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5Nn0.C-Mj5o9en8-YsXvflMXteCkQ4XRmNEpJkl3uA9yN9w4","level":"info","message":"auth send jwt","requestID":"dcc8e0370ac9263d73d8e215b94fe12e"} authentication-1 | {"level":"info","message":"GET /auth 200 28ms","method":"GET","requestID":"dcc8e0370ac9263d73d8e215b94fe12e","responseTime":28,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d641ec0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.084393,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"90cbf56c-afcb-4717-b03f-40b64fc5746e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173896.8821185} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2d641ec0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","object_type":"device","rebac_allow":false,"scope_allow":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":"2d641ec0-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d641ec0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/signaling 200 14ms","method":"POST","requestID":"2d641ec0-7a60-11ef-8bac-49f2f0d74a99","responseTime":14,"status":200,"url":"/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/signaling"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/77d71262-3a05-4f2a-8715-a8b36b710958","requestID":"dcc8e0370ac9263d73d8e215b94fe12e"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.934949,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"dcc8e0370ac9263d73d8e215b94fe12e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173896,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5Nn0.C-Mj5o9en8-YsXvflMXteCkQ4XRmNEpJkl3uA9yN9w4"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"dcc8e0370ac9263d73d8e215b94fe12e","responseTime":34,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/77d71262-3a05-4f2a-8715-a8b36b710958","requestID":"dcc8e0370ac9263d73d8e215b94fe12e"} experiment-1 | {"level":"info","message":"GET /experiments/77d71262-3a05-4f2a-8715-a8b36b710958 200 81ms","method":"GET","requestID":"dcc8e0370ac9263d73d8e215b94fe12e","responseTime":81,"status":200,"url":"/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"} gateway-1 | {"time_local":"24/Sep/2024:10:31:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/77d71262-3a05-4f2a-8715-a8b36b710958 HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dcc8e0370ac9263d73d8e215b94fe12e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5Nn0.C-Mj5o9en8-YsXvflMXteCkQ4XRmNEpJkl3uA9yN9w4","level":"info","message":"auth send jwt","requestID":"11c355e33809d4a92dede12f59357737"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"11c355e33809d4a92dede12f59357737","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/77d71262-3a05-4f2a-8715-a8b36b710958","requestID":"11c355e33809d4a92dede12f59357737"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.932417,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"11c355e33809d4a92dede12f59357737","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173896,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5Nn0.C-Mj5o9en8-YsXvflMXteCkQ4XRmNEpJkl3uA9yN9w4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"11c355e33809d4a92dede12f59357737","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Attempting to finish experiment","requestID":"11c355e33809d4a92dede12f59357737"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"2d7c3aa0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":34.455062,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2d7c3aa0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173896,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5Nn0.C-Mj5o9en8-YsXvflMXteCkQ4XRmNEpJkl3uA9yN9w4"} authorization-1 | {"level":"info","message":"POST /authorize 200 41ms","method":"POST","requestID":"2d7c3aa0-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c","device":"5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c","device":"3a301ed4-c675-4c33-8ac8-0b309865e969","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f5fb473-0f99-438e-8a85-20aa4f649c0c': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f5fb473-0f99-438e-8a85-20aa4f649c0c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"47f56b0e-89d0-4473-ba99-5bf08078393d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.122983} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3402c70f-c104-4a6a-a9ff-4f3e843f284a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.1243293} authorization-1 | {"level":"info","message":"POST /relations/update 200 45ms","method":"POST","requestID":"2d7c3aa0-7a60-11ef-8bac-49f2f0d74a99","responseTime":45,"status":200,"url":"/relations/update"} 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/3a301ed4-c675-4c33-8ac8-0b309865e969"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c"}}},"level":"info","message":"received a callback","requestID":"81838ca7ba7374c67a0791dee7db3b2f"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"81838ca7ba7374c67a0791dee7db3b2f","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":"81838ca7ba7374c67a0791dee7db3b2f","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"81787e113e79053b452d3f599a7099bd","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":"81787e113e79053b452d3f599a7099bd","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f5fb473-0f99-438e-8a85-20aa4f649c0c","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} 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/3a301ed4-c675-4c33-8ac8-0b309865e969"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c"}}},"level":"info","message":"received a callback","requestID":"81787e113e79053b452d3f599a7099bd"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969'"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"2d7c3aa0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c 204 186ms","method":"DELETE","requestID":"2d7c3aa0-7a60-11ef-8bac-49f2f0d74a99","responseTime":186,"status":204,"url":"/peerconnections/2f5fb473-0f99-438e-8a85-20aa4f649c0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"},"level":"info","message":"Successfully finished experiment","requestID":"11c355e33809d4a92dede12f59357737"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2da87ac0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.453019,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3a301ed4-c675-4c33-8ac8-0b309865e969","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e7959fac-cf3d-4491-a1ae-626e518ab764","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.3542418} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2da87ac0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 34ms","method":"POST","requestID":"2da87ac0-7a60-11ef-8bac-49f2f0d74a99","responseTime":34,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2da87ac0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F77d71262-3a05-4f2a-8715-a8b36b710958': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F77d71262-3a05-4f2a-8715-a8b36b710958","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"b7444f68-9e4f-48b8-af10-4740a27be0a5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.4093041} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1cda473-e396-497f-a7df-1316e0629b7a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.4106853} device-1 | {"level":"info","message":"POST /devices/3a301ed4-c675-4c33-8ac8-0b309865e969/signaling 200 89ms","method":"POST","requestID":"2da87ac0-7a60-11ef-8bac-49f2f0d74a99","responseTime":89,"status":200,"url":"/devices/3a301ed4-c675-4c33-8ac8-0b309865e969/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 89ms","method":"POST","requestID":"11c355e33809d4a92dede12f59357737","responseTime":89,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2db68480-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":27.510308,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"366ee52a-3034-4036-b4bb-6443decbbba1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.4232013} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2db68480-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"2db68480-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2db68480-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/signaling 200 38ms","method":"POST","requestID":"2db68480-7a60-11ef-8bac-49f2f0d74a99","responseTime":38,"status":200,"url":"/devices/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/77d71262-3a05-4f2a-8715-a8b36b710958","requestID":"11c355e33809d4a92dede12f59357737"} gateway-1 | {"time_local":"24/Sep/2024:10:31:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/77d71262-3a05-4f2a-8715-a8b36b710958 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.636","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"11c355e33809d4a92dede12f59357737"} experiment-1 | {"level":"info","message":"DELETE /experiments/77d71262-3a05-4f2a-8715-a8b36b710958 204 628ms","method":"DELETE","requestID":"11c355e33809d4a92dede12f59357737","responseTime":628,"status":204,"url":"/experiments/77d71262-3a05-4f2a-8715-a8b36b710958"} gateway-1 | {"time_local":"24/Sep/2024:10:31:37 +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.492","http_referrer":"","http_user_agent":"node-fetch","requestID":"81838ca7ba7374c67a0791dee7db3b2f"} gateway-1 | {"time_local":"24/Sep/2024:10:31:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2990","request_time":"2.651","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":"09ce400f09a0574ad2ca4dfc68f3daaa"} gateway-1 | {"time_local":"24/Sep/2024:10:31:37 +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.490","http_referrer":"","http_user_agent":"node-fetch","requestID":"81787e113e79053b452d3f599a7099bd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 489ms","method":"POST","requestID":"81838ca7ba7374c67a0791dee7db3b2f","responseTime":489,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 486ms","method":"POST","requestID":"81787e113e79053b452d3f599a7099bd","responseTime":486,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5N30.OI5mr98G__B8a2AbESNuvlAAC8LEUoC2qvGnpWaDuwI","level":"info","message":"auth send jwt","requestID":"48b8309f6167264464e7e949d8f88e8f"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"48b8309f6167264464e7e949d8f88e8f","responseTime":8,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:31:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"2.839","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":"fc197ddf802b2f030dbf0bf491e82284"} device-1 | {"level":"info","message":"postDevices called","requestID":"48b8309f6167264464e7e949d8f88e8f"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3a301ed4-c675-4c33-8ac8-0b309865e969' closed"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.920337,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"48b8309f6167264464e7e949d8f88e8f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173897,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5N30.OI5mr98G__B8a2AbESNuvlAAC8LEUoC2qvGnpWaDuwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"48b8309f6167264464e7e949d8f88e8f","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/5e08241d-e8d2-431f-85d4-6ac1a6dacf0f' 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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4e62c0e-023a-4fd2-9416-7b95670310ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1e1dcc38-29cc-40da-98e4-4fbb49974b28","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.7544534} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"48b8309f6167264464e7e949d8f88e8f","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8f39ae5-7d45-4410-83ee-5ae33008b65a","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.7609663} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"48b8309f6167264464e7e949d8f88e8f","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4e62c0e-023a-4fd2-9416-7b95670310ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"4ebed72c-dc53-4a3a-aed6-223de8d9bc5e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.8006942} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72862f9a-9e6f-49dc-8cc8-cdba20335232","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.8017511} authorization-1 | {"level":"info","message":"POST /relations/update 200 43ms","method":"POST","requestID":"48b8309f6167264464e7e949d8f88e8f","responseTime":43,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4e62c0e-023a-4fd2-9416-7b95670310ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4e62c0e-023a-4fd2-9416-7b95670310ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:37.800631972Z"}]},"request_id":"199289e9-f418-4933-843f-19312646799c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.808536} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"48b8309f6167264464e7e949d8f88e8f"} device-1 | {"level":"info","message":"POST /devices? 201 146ms","method":"POST","requestID":"48b8309f6167264464e7e949d8f88e8f","responseTime":146,"status":201,"url":"/devices?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"48b8309f6167264464e7e949d8f88e8f","responseTime":8,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"24/Sep/2024:10:31:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"315","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48b8309f6167264464e7e949d8f88e8f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5N30.OI5mr98G__B8a2AbESNuvlAAC8LEUoC2qvGnpWaDuwI","level":"info","message":"auth send jwt","requestID":"992f672d744495bd6897bc4706709d99"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"992f672d744495bd6897bc4706709d99","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"992f672d744495bd6897bc4706709d99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.931595,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"992f672d744495bd6897bc4706709d99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173897,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3Mzg5N30.OI5mr98G__B8a2AbESNuvlAAC8LEUoC2qvGnpWaDuwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"992f672d744495bd6897bc4706709d99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d01d8e0c-2a7f-4a81-aa1d-0d4f8a644228","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.9033122} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"992f672d744495bd6897bc4706709d99","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cade9321-4d30-42a9-9455-f3f58884d43b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.9107585} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"992f672d744495bd6897bc4706709d99","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"652155f9-9c15-4785-9be5-0911664a1821","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.9543593} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"deacf4c1-71b9-4780-b6e4-b0a98e8254af","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.9551136} authorization-1 | {"level":"info","message":"POST /relations/update 200 48ms","method":"POST","requestID":"992f672d744495bd6897bc4706709d99","responseTime":48,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:37.954322811Z"}]},"request_id":"87f5df22-1ac5-4c05-a04d-053fe597a7e1","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173897.9619138} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"992f672d744495bd6897bc4706709d99"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"992f672d744495bd6897bc4706709d99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices? 201 142ms","method":"POST","requestID":"992f672d744495bd6897bc4706709d99","responseTime":142,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"992f672d744495bd6897bc4706709d99"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1210165c798012b485c371b0bc1e3fa4","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":"1210165c798012b485c371b0bc1e3fa4","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"24/Sep/2024:10:31:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/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":"1210165c798012b485c371b0bc1e3fa4"} device-1 | {"level":"info","message":"OPTIONS /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/websocket 200 2ms","method":"OPTIONS","requestID":"1210165c798012b485c371b0bc1e3fa4","responseTime":2,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMH0.y7kwdOVuqTZbKtrQgrLE2JNUVuGva8bGr5iqhcv9E-M","level":"info","message":"auth send jwt","requestID":"6beb6b323ed9add6e9d79304505761f6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6beb6b323ed9add6e9d79304505761f6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6beb6b323ed9add6e9d79304505761f6"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.884114,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"6beb6b323ed9add6e9d79304505761f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173900,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMH0.y7kwdOVuqTZbKtrQgrLE2JNUVuGva8bGr5iqhcv9E-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6beb6b323ed9add6e9d79304505761f6","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6beb6b323ed9add6e9d79304505761f6"} gateway-1 | {"time_local":"24/Sep/2024:10:31:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.116","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":"6beb6b323ed9add6e9d79304505761f6"} device-1 | {"level":"info","message":"POST /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/websocket 200 112ms","method":"POST","requestID":"6beb6b323ed9add6e9d79304505761f6","responseTime":112,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMH0.y7kwdOVuqTZbKtrQgrLE2JNUVuGva8bGr5iqhcv9E-M","level":"info","message":"auth send jwt","requestID":"ac4e97db80e2bbd3bbc8893736c14d60"} authentication-1 | {"level":"info","message":"GET /auth 200 32ms","method":"GET","requestID":"ac4e97db80e2bbd3bbc8893736c14d60","responseTime":32,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ac4e97db80e2bbd3bbc8893736c14d60"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:40Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.935307,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"ac4e97db80e2bbd3bbc8893736c14d60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173900,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMH0.y7kwdOVuqTZbKtrQgrLE2JNUVuGva8bGr5iqhcv9E-M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ac4e97db80e2bbd3bbc8893736c14d60","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:37.954322811Z"}]},"request_id":"8b0400c4-58f4-4e88-9541-6ce18a775e1b","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173900.9807377} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ac4e97db80e2bbd3bbc8893736c14d60","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ac4e97db80e2bbd3bbc8893736c14d60"} device-1 | {"level":"info","message":"GET /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0? 200 29ms","method":"GET","requestID":"ac4e97db80e2bbd3bbc8893736c14d60","responseTime":29,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ac4e97db80e2bbd3bbc8893736c14d60"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMX0.imw7dvwoFVXOwrxMaDh4QG973kMzvGMoxzR1j_Cwm8o","level":"info","message":"auth send jwt","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6f83516548b28018bc724b0aaca5d5a9"} authentication-1 | {"level":"info","message":"GET /auth 200 32ms","method":"GET","requestID":"6f83516548b28018bc724b0aaca5d5a9","responseTime":32,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.88253,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"6f83516548b28018bc724b0aaca5d5a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173901,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMX0.imw7dvwoFVXOwrxMaDh4QG973kMzvGMoxzR1j_Cwm8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f83516548b28018bc724b0aaca5d5a9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Attempting to run experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Attempting to book experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Successfully booked experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2ff3ca50-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.888584,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4e62c0e-023a-4fd2-9416-7b95670310ac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2ff3ca50-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b4e62c0e-023a-4fd2-9416-7b95670310ac","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173901,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMX0.imw7dvwoFVXOwrxMaDh4QG973kMzvGMoxzR1j_Cwm8o"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2ff88540-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 30ms","method":"POST","requestID":"2ff3ca50-7a60-11ef-8bac-49f2f0d74a99","responseTime":30,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.886823,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"2ff88540-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173901,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMX0.imw7dvwoFVXOwrxMaDh4QG973kMzvGMoxzR1j_Cwm8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2ff88540-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4e62c0e-023a-4fd2-9416-7b95670310ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4e62c0e-023a-4fd2-9416-7b95670310ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:37.800631972Z"}]},"request_id":"e631983c-661f-4295-8e1f-c2946ae4d2e6","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173901.21699} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2ff3ca50-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:37.954322811Z"}]},"request_id":"4303780d-5b10-4aa0-9154-99bede7d3b4f","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173901.2263186} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2ff88540-7a60-11ef-8bac-49f2f0d74a99","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2ff3ca50-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/b4e62c0e-023a-4fd2-9416-7b95670310ac? 200 63ms","method":"GET","requestID":"2ff3ca50-7a60-11ef-8bac-49f2f0d74a99","responseTime":63,"status":200,"url":"/devices/b4e62c0e-023a-4fd2-9416-7b95670310ac?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2ff88540-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Setting up experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} device-1 | {"level":"info","message":"GET /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0? 200 67ms","method":"GET","requestID":"2ff88540-7a60-11ef-8bac-49f2f0d74a99","responseTime":67,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"300ef370-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.880817,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4e62c0e-023a-4fd2-9416-7b95670310ac","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"300ef370-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/b4e62c0e-023a-4fd2-9416-7b95670310ac","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173901,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMX0.imw7dvwoFVXOwrxMaDh4QG973kMzvGMoxzR1j_Cwm8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"300ef370-7a60-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"0cd5d4e5-f253-49df-a13f-7e06c80dc3d2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173901.6304288} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e4f78315-19c8-4b2c-8721-960f919d9f72","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173901.6316981} authorization-1 | {"level":"info","message":"POST /relations/update 200 64ms","method":"POST","requestID":"300ef370-7a60-11ef-8bac-49f2f0d74a99","responseTime":64,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f' to 'http://localhost/callbacks/experiment'","requestID":"300ef370-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"300ef370-7a60-11ef-8bac-49f2f0d74a99"} authentication-1 | {"level":"info","message":"POST /token 201 108ms","method":"POST","requestID":"303c1df0-7a60-11ef-8f1d-31f30808ee80","responseTime":108,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/b4e62c0e-023a-4fd2-9416-7b95670310ac?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 411ms","method":"POST","requestID":"300ef370-7a60-11ef-8bac-49f2f0d74a99","responseTime":411,"status":201,"url":"/devices/b4e62c0e-023a-4fd2-9416-7b95670310ac?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Successfully set up experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"305ec120-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926343,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"305ec120-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173901,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMX0.imw7dvwoFVXOwrxMaDh4QG973kMzvGMoxzR1j_Cwm8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"305ec120-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:41.630389513Z"}]},"request_id":"54bc6635-e943-4b08-8245-b96f795a08d2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173901.890862} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"305ec120-7a60-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"30666240-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"305ec120-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:41Z"} device-1 | {"level":"info","message":"GET /devices/5df90070-1971-4fae-9093-df416a6df99f? 200 68ms","method":"GET","requestID":"305ec120-7a60-11ef-8bac-49f2f0d74a99","responseTime":68,"status":200,"url":"/devices/5df90070-1971-4fae-9093-df416a6df99f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"30694870-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.92109,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"30666240-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173901,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMX0.imw7dvwoFVXOwrxMaDh4QG973kMzvGMoxzR1j_Cwm8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 20ms","method":"POST","requestID":"30666240-7a60-11ef-8bac-49f2f0d74a99","responseTime":20,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.497723,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:41Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8d3370f3-b76f-4ba9-82dc-41ab86f47087","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173901.9524207} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Successfully running experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"30694870-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","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 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device 5df90070-1971-4fae-9093-df416a6df99f","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device 5df90070-1971-4fae-9093-df416a6df99f\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/5df90070-1971-4fae-9093-df416a6df99f/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"30694870-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/5df90070-1971-4fae-9093-df416a6df99f/signaling 404 59ms","method":"POST","requestID":"30694870-7a60-11ef-8bac-49f2f0d74a99","responseTime":59,"status":404,"url":"/devices/5df90070-1971-4fae-9093-df416a6df99f/signaling"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device 5df90070-1971-4fae-9093-df416a6df99f"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"6f83516548b28018bc724b0aaca5d5a9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3072e560-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"level":"info","message":"POST /authorize 200 59ms","method":"POST","requestID":"30694870-7a60-11ef-8bac-49f2f0d74a99","responseTime":59,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:37.954322811Z"}]},"request_id":"3902a252-b9f1-4442-a08c-b2c8afbcd285","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173901.9951453} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"30666240-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0? 200 93ms","method":"GET","requestID":"30666240-7a60-11ef-8bac-49f2f0d74a99","responseTime":93,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 29ms","method":"POST","requestID":"30666240-7a60-11ef-8bac-49f2f0d74a99","responseTime":53,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5d542c38-6253-4082-b15f-7c2227464cbd","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173902.0476744} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.625528,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3072e560-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","object_type":"device","rebac_allow":false,"scope_allow":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":"3072e560-7a60-11ef-8bac-49f2f0d74a99","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3072e560-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/signaling 200 59ms","method":"POST","requestID":"3072e560-7a60-11ef-8bac-49f2f0d74a99","responseTime":59,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/signaling"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F10de75aa-01a1-40b1-8af4-4ddc14aa176a#owner@http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F10de75aa-01a1-40b1-8af4-4ddc14aa176a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"1322d626-dff7-4b5f-9545-37a89e88e2d5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173902.1133952} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae062cd7-310d-483d-928b-0828668f38ae","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173902.1138883} authorization-1 | {"level":"info","message":"POST /relations/update 200 106ms","method":"POST","requestID":"6f83516548b28018bc724b0aaca5d5a9","responseTime":106,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a","user":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 1100ms","method":"POST","requestID":"6f83516548b28018bc724b0aaca5d5a9","responseTime":1100,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1107","request_time":"1.125","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6f83516548b28018bc724b0aaca5d5a9"} gateway-1 | {"time_local":"24/Sep/2024:10:31:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5df90070-1971-4fae-9093-df416a6df99f/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":"c57a1072dd53eda856362e95dbff9c73"} device-1 | {"level":"info","message":"OPTIONS /devices/5df90070-1971-4fae-9093-df416a6df99f/websocket 200 1ms","method":"OPTIONS","requestID":"c57a1072dd53eda856362e95dbff9c73","responseTime":1,"status":200,"url":"/devices/5df90070-1971-4fae-9093-df416a6df99f/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c57a1072dd53eda856362e95dbff9c73","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":"c57a1072dd53eda856362e95dbff9c73","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6IkFGWk9JZEliR0IxdlVKaGhhOVBFOUV0N1hQMXVzUDZUS2tLUjVybERtOEEzQm9jSnpUX0JqSDdQU0ZtVU9TQnQ2UkxVanowMzNGaVU5ZWxtMnlUYllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwNX0.ju0-QEBLy81gc6ydb20liqeva0vJixLQ2LCFps0EdDU","level":"info","message":"auth send jwt","requestID":"eba5f58e89184bf52c6ae2de973fc1c9"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"eba5f58e89184bf52c6ae2de973fc1c9","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"eba5f58e89184bf52c6ae2de973fc1c9"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.99053,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"eba5f58e89184bf52c6ae2de973fc1c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","object_type":"device","payload":{"admin":true,"edgeToken":"AFZOIdIbGB1vUJhha9PE9Et7XP1usP6TKkKR5rlDm8A3BocJzT_BjH7PSFmUOSBt6RLUjz033FiU9elm2yTbYQ","iat":1727173905,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6IkFGWk9JZEliR0IxdlVKaGhhOVBFOUV0N1hQMXVzUDZUS2tLUjVybERtOEEzQm9jSnpUX0JqSDdQU0ZtVU9TQnQ2UkxVanowMzNGaVU5ZWxtMnlUYllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwNX0.ju0-QEBLy81gc6ydb20liqeva0vJixLQ2LCFps0EdDU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eba5f58e89184bf52c6ae2de973fc1c9","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"eba5f58e89184bf52c6ae2de973fc1c9"} device-1 | {"level":"info","message":"POST /devices/5df90070-1971-4fae-9093-df416a6df99f/websocket 200 71ms","method":"POST","requestID":"eba5f58e89184bf52c6ae2de973fc1c9","responseTime":71,"status":200,"url":"/devices/5df90070-1971-4fae-9093-df416a6df99f/websocket"} gateway-1 | {"time_local":"24/Sep/2024:10:31:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5df90070-1971-4fae-9093-df416a6df99f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.073","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":"eba5f58e89184bf52c6ae2de973fc1c9"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cf6d97927a4fd6ad1053cd2d01ba2de4","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":"cf6d97927a4fd6ad1053cd2d01ba2de4","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwNX0.3gkLdl4rXWeInwaCd2R46SwFHKk2Z5pEYOBItV6CvaI","level":"info","message":"auth send jwt","requestID":"140ac5fb7ba7f14b1fad4c73d4083143"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"140ac5fb7ba7f14b1fad4c73d4083143","responseTime":4,"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/5df90070-1971-4fae-9093-df416a6df99f"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"cf6d97927a4fd6ad1053cd2d01ba2de4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"140ac5fb7ba7f14b1fad4c73d4083143"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.036354,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"140ac5fb7ba7f14b1fad4c73d4083143","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173905,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwNX0.3gkLdl4rXWeInwaCd2R46SwFHKk2Z5pEYOBItV6CvaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"140ac5fb7ba7f14b1fad4c73d4083143","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.059","http_referrer":"","http_user_agent":"node-fetch","requestID":"cf6d97927a4fd6ad1053cd2d01ba2de4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 48ms","method":"POST","requestID":"cf6d97927a4fd6ad1053cd2d01ba2de4","responseTime":48,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:41.630389513Z"}]},"request_id":"e6a71bb9-bbf2-4862-adca-9c4abd798ca5","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173905.245444} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"140ac5fb7ba7f14b1fad4c73d4083143","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"140ac5fb7ba7f14b1fad4c73d4083143"} device-1 | {"level":"info","message":"GET /devices/5df90070-1971-4fae-9093-df416a6df99f? 200 22ms","method":"GET","requestID":"140ac5fb7ba7f14b1fad4c73d4083143","responseTime":22,"status":200,"url":"/devices/5df90070-1971-4fae-9093-df416a6df99f?"} gateway-1 | {"time_local":"24/Sep/2024:10:31:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5df90070-1971-4fae-9093-df416a6df99f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.067","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"140ac5fb7ba7f14b1fad4c73d4083143"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a3d1f2867ff1300f90a3b7ece59aeb6e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwNX0.3gkLdl4rXWeInwaCd2R46SwFHKk2Z5pEYOBItV6CvaI","level":"info","message":"auth send jwt","requestID":"a3d1f2867ff1300f90a3b7ece59aeb6e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a3d1f2867ff1300f90a3b7ece59aeb6e","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.963062,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"a3d1f2867ff1300f90a3b7ece59aeb6e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173905,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwNX0.3gkLdl4rXWeInwaCd2R46SwFHKk2Z5pEYOBItV6CvaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 19ms","method":"POST","requestID":"a3d1f2867ff1300f90a3b7ece59aeb6e","responseTime":19,"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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:37.954322811Z"}]},"request_id":"abab17e3-cf80-4036-b232-60d545abd5fa","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173905.3179572} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a3d1f2867ff1300f90a3b7ece59aeb6e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a3d1f2867ff1300f90a3b7ece59aeb6e"} gateway-1 | {"time_local":"24/Sep/2024:10:31:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.095","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a3d1f2867ff1300f90a3b7ece59aeb6e"} device-1 | {"level":"info","message":"GET /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0? 200 68ms","method":"GET","requestID":"a3d1f2867ff1300f90a3b7ece59aeb6e","responseTime":68,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"336ff8c0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"337046e0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.953653,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"336ff8c0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173901,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMX0.imw7dvwoFVXOwrxMaDh4QG973kMzvGMoxzR1j_Cwm8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"336ff8c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":29,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.937248,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"337046e0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173901,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMX0.imw7dvwoFVXOwrxMaDh4QG973kMzvGMoxzR1j_Cwm8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"337046e0-7a60-11ef-8bac-49f2f0d74a99","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:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:41.630389513Z"}]},"request_id":"0c116999-c326-4baf-8b1a-e67a86112cf8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173907.05852} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"},"timestamp":"2024-09-24T10:31:37.954322811Z"}]},"request_id":"7143ac90-d52b-4cce-8906-d48ba31b3ab2","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173907.061137} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"336ff8c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"337046e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"336ff8c0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/5df90070-1971-4fae-9093-df416a6df99f? 200 82ms","method":"GET","requestID":"336ff8c0-7a60-11ef-8bac-49f2f0d74a99","responseTime":82,"status":200,"url":"/devices/5df90070-1971-4fae-9093-df416a6df99f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"337046e0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0? 200 82ms","method":"GET","requestID":"337046e0-7a60-11ef-8bac-49f2f0d74a99","responseTime":82,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"337d1820-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.51017,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8846cf04-c824-4227-9a18-f79d1810c18d","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173907.1149764} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"337d1820-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"337d1820-7a60-11ef-8bac-49f2f0d74a99","responseTime":32,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"337d1820-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/5df90070-1971-4fae-9093-df416a6df99f/signaling 200 44ms","method":"POST","requestID":"337d1820-7a60-11ef-8bac-49f2f0d74a99","responseTime":44,"status":200,"url":"/devices/5df90070-1971-4fae-9093-df416a6df99f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"33855580-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.292414,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1d7a313-5b41-478f-85be-c88c578f179e","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173907.16662} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"33855580-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"33855580-7a60-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Building connection plan","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"4b4c50fc-791a-46e1-b9b6-ea0b6ce0ba51"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"36b12922-c4db-4721-b822-2aebfa880d83"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"a0461515-4fa9-46a7-8620-26f5032c5b73"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6f83516548b28018bc724b0aaca5d5a9"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"6f83516548b28018bc724b0aaca5d5a9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"33855580-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/signaling 200 48ms","method":"POST","requestID":"33855580-7a60-11ef-8bac-49f2f0d74a99","responseTime":48,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/signaling"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"338ccf90-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.955157,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"338ccf90-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173901,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwMX0.imw7dvwoFVXOwrxMaDh4QG973kMzvGMoxzR1j_Cwm8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"338ccf90-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702'. 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]}},"raw_response":{},"request_id":"9134f2a9-caf3-4e20-91e1-fe1a37815fa3","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173907.2928753} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18042d3c-d10a-41b6-8eb6-27182e224fe7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173907.2942297} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"338ccf90-7a60-11ef-8bac-49f2f0d74a99","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"338ccf90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"338ccf90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322'","requestID":"338ccf90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322'","requestID":"338ccf90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"338ccf90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 139ms","method":"POST","requestID":"338ccf90-7a60-11ef-8bac-49f2f0d74a99","responseTime":139,"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":"338ccf90-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322","device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","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/b61b7122-83c6-497e-8b03-5e5779ca5322","device":"5df90070-1971-4fae-9093-df416a6df99f","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/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6f83516548b28018bc724b0aaca5d5a9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"33b03610-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.623357,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d8cdee6-9659-47f9-8fad-0439e1e4af22","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173907.4477248} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"33b03610-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","object_type":"device","rebac_allow":false,"scope_allow":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":"33b03610-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"33b03610-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/5df90070-1971-4fae-9093-df416a6df99f/signaling 200 46ms","method":"POST","requestID":"33b03610-7a60-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/devices/5df90070-1971-4fae-9093-df416a6df99f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"33b78910-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.322141,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:47Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff2f4416-915e-4278-8481-c23e37a15ba4","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173907.4958382} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"33b78910-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","object_type":"device","rebac_allow":false,"scope_allow":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":"33b78910-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"33b78910-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/signaling 200 46ms","method":"POST","requestID":"33b78910-7a60-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/signaling"} device-1 | {"device":"5df90070-1971-4fae-9093-df416a6df99f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5df90070-1971-4fae-9093-df416a6df99f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 4067553666427984505 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:0yeH\r\na=ice-pwd:OMOymYWK/C2Bq77OQRKhHx1g\r\na=ice-options:trickle\r\na=fingerprint:sha-256 1F:C1:99:79:D3:2A:DA:D1:99:89:D0:84:7D:34:45:1C:5B:E1:C1:AE:F6:DA:1B:12:86:FF:31:D0:42:5E:5F:7B\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"5df90070-1971-4fae-9093-df416a6df99f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 7677589897592035998 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:/Oi6\r\na=ice-pwd:pHO0wp4F/utmqWbG3d8cIMAK\r\na=ice-options:trickle\r\na=fingerprint:sha-256 45:55:14:EE:F2:C1:C9:63:38:79:00:10:06:3B:FC:FB:A9:34:1A:63:5C:37:6E:92:19:CF:51:5A:DD:F0:FB:AC\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1833123853 1 udp 2113937151 58da92df-c867-42b6-b04d-082f28922852.local 34785 typ host generation 0 ufrag /Oi6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4268286238 1 udp 1677729535 141.24.211.56 34785 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag /Oi6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","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/431b45f0-0474-4929-a6f7-d7efb25fe9b0'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0'"} device-1 | {"content":{"candidate":"candidate:3924132390 1 udp 2113937151 56ad9bb1-8ff1-4a2c-8ed9-71ed2a1f0986.local 50469 typ host generation 0 ufrag 0yeH network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5df90070-1971-4fae-9093-df416a6df99f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1841883225 1 udp 1677729535 141.24.211.56 50469 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 0yeH network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5df90070-1971-4fae-9093-df416a6df99f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1078221548 1 udp 33562623 141.24.210.113 60268 typ relay raddr 141.24.211.56 rport 34785 generation 0 ufrag /Oi6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1053120466 1 udp 33562623 141.24.210.113 60140 typ relay raddr 141.24.211.56 rport 50469 generation 0 ufrag 0yeH network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5df90070-1971-4fae-9093-df416a6df99f","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/5df90070-1971-4fae-9093-df416a6df99f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f'"} device-1 | {"device":"5df90070-1971-4fae-9093-df416a6df99f","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/b61b7122-83c6-497e-8b03-5e5779ca5322' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b61b7122-83c6-497e-8b03-5e5779ca5322","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"10f25304cd1750dbf2f362b4313c4d1d","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":"10f25304cd1750dbf2f362b4313c4d1d","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/431b45f0-0474-4929-a6f7-d7efb25fe9b0"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322"}}},"level":"info","message":"received a callback","requestID":"10f25304cd1750dbf2f362b4313c4d1d"} gateway-1 | {"time_local":"24/Sep/2024:10:31:47 +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":"10f25304cd1750dbf2f362b4313c4d1d"} device-1 | {"device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"peerconnection":"b61b7122-83c6-497e-8b03-5e5779ca5322","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 45ms","method":"POST","requestID":"10f25304cd1750dbf2f362b4313c4d1d","responseTime":45,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"5df90070-1971-4fae-9093-df416a6df99f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"b61b7122-83c6-497e-8b03-5e5779ca5322","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5df90070-1971-4fae-9093-df416a6df99f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b61b7122-83c6-497e-8b03-5e5779ca5322","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0176445cc14ab92c3700073b7a954077","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":"0176445cc14ab92c3700073b7a954077","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/431b45f0-0474-4929-a6f7-d7efb25fe9b0"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322"}}},"level":"info","message":"received a callback","requestID":"0176445cc14ab92c3700073b7a954077"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"34061e40-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.087258,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb61b7122-83c6-497e-8b03-5e5779ca5322","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3300b1d8-4215-4d46-a269-ba37f3ad58c7","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173908.0111845} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"34061e40-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322","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":"34061e40-7a60-11ef-8bac-49f2f0d74a99","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"34061e40-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"GET /peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322 200 49ms","method":"GET","requestID":"34061e40-7a60-11ef-8bac-49f2f0d74a99","responseTime":49,"status":200,"url":"/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwOH0.WUpeE9061dBa64dZQdOQDYreQH8PMWV-ZQhE7-4A2Xw","level":"info","message":"auth send jwt","requestID":"3601fe5bc39958cc40dbd562d4b59d39"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"3601fe5bc39958cc40dbd562d4b59d39","responseTime":8,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a","requestID":"3601fe5bc39958cc40dbd562d4b59d39"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.977887,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"3601fe5bc39958cc40dbd562d4b59d39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173908,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwOH0.WUpeE9061dBa64dZQdOQDYreQH8PMWV-ZQhE7-4A2Xw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3601fe5bc39958cc40dbd562d4b59d39","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"34178360-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 156ms","method":"POST","requestID":"0176445cc14ab92c3700073b7a954077","responseTime":156,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.190","http_referrer":"","http_user_agent":"node-fetch","requestID":"0176445cc14ab92c3700073b7a954077"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a","requestID":"3601fe5bc39958cc40dbd562d4b59d39"} experiment-1 | {"level":"info","message":"GET /experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a 200 65ms","method":"GET","requestID":"3601fe5bc39958cc40dbd562d4b59d39","responseTime":65,"status":200,"url":"/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"} gateway-1 | {"time_local":"24/Sep/2024:10:31:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a HTTP/1.1","status": "200","body_bytes_sent":"1180","request_time":"0.102","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3601fe5bc39958cc40dbd562d4b59d39"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwOH0.WUpeE9061dBa64dZQdOQDYreQH8PMWV-ZQhE7-4A2Xw","level":"info","message":"auth send jwt","requestID":"48115f1fb879d834446024e2d3b43536"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a","requestID":"48115f1fb879d834446024e2d3b43536"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"48115f1fb879d834446024e2d3b43536","responseTime":8,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.590769,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e4b90882-d427-45d2-a906-2ac9014c3e35","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173908.1520567} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"34178360-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 52ms","method":"POST","requestID":"34178360-7a60-11ef-8bac-49f2f0d74a99","responseTime":52,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.127358,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"48115f1fb879d834446024e2d3b43536","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"experiment:http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a","object_type":"experiment","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173908,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwOH0.WUpeE9061dBa64dZQdOQDYreQH8PMWV-ZQhE7-4A2Xw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48115f1fb879d834446024e2d3b43536","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"34178360-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/signaling 200 94ms","method":"POST","requestID":"34178360-7a60-11ef-8bac-49f2f0d74a99","responseTime":94,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"34267780-7a60-11ef-8bac-49f2f0d74a99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Attempting to finish experiment","requestID":"48115f1fb879d834446024e2d3b43536"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d159ad79-b0f5-4240-9bc7-542f510c46b8","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173908.2229433} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":29.04881,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:48Z"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"342788f0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"34267780-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 33ms","method":"POST","requestID":"34267780-7a60-11ef-8bac-49f2f0d74a99","responseTime":33,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.021357,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"342788f0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"peerconnection:http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173908,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwOH0.WUpeE9061dBa64dZQdOQDYreQH8PMWV-ZQhE7-4A2Xw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"342788f0-7a60-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"34267780-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/5df90070-1971-4fae-9093-df416a6df99f/signaling 200 46ms","method":"POST","requestID":"34267780-7a60-11ef-8bac-49f2f0d74a99","responseTime":46,"status":200,"url":"/devices/5df90070-1971-4fae-9093-df416a6df99f/signaling"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322","device":"431b45f0-0474-4929-a6f7-d7efb25fe9b0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322","device":"5df90070-1971-4fae-9093-df416a6df99f","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/b61b7122-83c6-497e-8b03-5e5779ca5322' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b61b7122-83c6-497e-8b03-5e5779ca5322","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} 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/431b45f0-0474-4929-a6f7-d7efb25fe9b0"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322"}}},"level":"info","message":"received a callback","requestID":"5e86b1396cf14ccce7a14d76c61af290"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb61b7122-83c6-497e-8b03-5e5779ca5322': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb61b7122-83c6-497e-8b03-5e5779ca5322","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"12323802-e01b-4914-adc6-7a9e3cf0f674","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173908.3545182} 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/431b45f0-0474-4929-a6f7-d7efb25fe9b0"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322"}}},"level":"info","message":"received a callback","requestID":"083231e187fea193e0ee55ec19c9bd9f"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5e86b1396cf14ccce7a14d76c61af290","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":"5e86b1396cf14ccce7a14d76c61af290","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"083231e187fea193e0ee55ec19c9bd9f","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":"083231e187fea193e0ee55ec19c9bd9f","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:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0196d1b-cde2-47b3-85fe-71b957d75c29","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173908.356055} authorization-1 | {"level":"info","message":"POST /relations/update 200 54ms","method":"POST","requestID":"342788f0-7a60-11ef-8bac-49f2f0d74a99","responseTime":54,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"b61b7122-83c6-497e-8b03-5e5779ca5322","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"342788f0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322 204 185ms","method":"DELETE","requestID":"342788f0-7a60-11ef-8bac-49f2f0d74a99","responseTime":185,"status":204,"url":"/peerconnections/b61b7122-83c6-497e-8b03-5e5779ca5322"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"344411a0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.064716,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"344411a0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","object_type":"device","payload":{"admin":true,"edgeToken":"huPQnGJC7LFqAT-Z3OJq1auaNHih1I7F5z9jfMmKysMUDPzbMfQme5fF-jPgjdlOVVxYuKj3tcAPhbkRmaHJDA","iat":1727173908,"sub":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702","subject_alt":"http://localhost/users/a228028e-d4f1-4b0a-9598-8de90aa0b702"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2EyMjgwMjhlLWQ0ZjEtNGIwYS05NTk4LThkZTkwYWEwYjcwMiIsImVkZ2VUb2tlbiI6Imh1UFFuR0pDN0xGcUFULVozT0pxMWF1YU5IaWgxSTdGNXo5amZNbUt5c01VRFB6Yk1mUW1lNWZGLWpQZ2pkbE9WVnhZdUtqM3RjQVBoYmtSbWFISkRBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzE3MzkwOH0.WUpeE9061dBa64dZQdOQDYreQH8PMWV-ZQhE7-4A2Xw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"344411a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"6c399284-a3cb-4069-9d7b-2b4b3895931c","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173908.4628148} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f256347-c8b6-4951-aa96-c2dfe31298cf","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173908.4642358} authorization-1 | {"level":"info","message":"POST /relations/update 200 43ms","method":"POST","requestID":"344411a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":43,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"344411a0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"DELETE /devices/5df90070-1971-4fae-9093-df416a6df99f 204 122ms","method":"DELETE","requestID":"344411a0-7a60-11ef-8bac-49f2f0d74a99","responseTime":122,"status":204,"url":"/devices/5df90070-1971-4fae-9093-df416a6df99f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"},"level":"info","message":"Successfully finished experiment","requestID":"48115f1fb879d834446024e2d3b43536"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"346c5a20-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.17872,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F431b45f0-0474-4929-a6f7-d7efb25fe9b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"88a5722d-8cb6-42c5-9b70-715207eb7ace","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173908.6796434} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","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%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F10de75aa-01a1-40b1-8af4-4ddc14aa176a': 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:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F10de75aa-01a1-40b1-8af4-4ddc14aa176a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fa228028e-d4f1-4b0a-9598-8de90aa0b702"}]},"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","writes":null},"raw_response":{},"request_id":"d76e6fb5-44fe-4924-b888-58089341fb76","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173908.683475} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35"},"raw_response":{"authorization_model":{"id":"01J8HS4D3NYXQCNNK44E3DSQDC","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1c3aeae-66bb-4fe2-981c-b30665c93c99","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173908.6853712} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"346c5a20-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0","object_type":"device","rebac_allow":false,"scope_allow":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":"346c5a20-7a60-11ef-8bac-49f2f0d74a99","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"48115f1fb879d834446024e2d3b43536","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"346c5a20-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/signaling 200 24ms","method":"POST","requestID":"346c5a20-7a60-11ef-8bac-49f2f0d74a99","responseTime":24,"status":200,"url":"/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"347078d0-7a60-11ef-8bac-49f2f0d74a99"} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Received request.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:35334","raw_request":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","contextual_tuples":null,"store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5df90070-1971-4fae-9093-df416a6df99f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3d4d06d-879b-46d2-a3a7-f92632735e02","store_id":"01J8HS4CP8AWZXPZRPP7GTHH35","subsystem":"openfga","timestamp":1727173908.7313511} authorization-1 | {"client_addr":"127.0.0.1:46784","level":"info","msg":"Sent response.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.885145,"resp_status":200,"subsystem":"opa","time":"2024-09-24T10:31:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","openfga":{"authorization_model_id":"01J8HS4D3NYXQCNNK44E3DSQDC","store":"01J8HS4CP8AWZXPZRPP7GTHH35"},"requestID":"347078d0-7a60-11ef-8bac-49f2f0d74a99","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 31ms","method":"POST","requestID":"347078d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":31,"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/5df90070-1971-4fae-9093-df416a6df99f/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"347078d0-7a60-11ef-8bac-49f2f0d74a99"} device-1 | {"level":"info","message":"POST /devices/5df90070-1971-4fae-9093-df416a6df99f/signaling 404 41ms","method":"POST","requestID":"347078d0-7a60-11ef-8bac-49f2f0d74a99","responseTime":41,"status":404,"url":"/devices/5df90070-1971-4fae-9093-df416a6df99f/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":"48115f1fb879d834446024e2d3b43536"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a","requestID":"48115f1fb879d834446024e2d3b43536"} gateway-1 | {"time_local":"24/Sep/2024:10:31:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.723","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48115f1fb879d834446024e2d3b43536"} experiment-1 | {"level":"info","message":"DELETE /experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a 204 718ms","method":"DELETE","requestID":"48115f1fb879d834446024e2d3b43536","responseTime":718,"status":204,"url":"/experiments/10de75aa-01a1-40b1-8af4-4ddc14aa176a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 531ms","method":"POST","requestID":"5e86b1396cf14ccce7a14d76c61af290","responseTime":531,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.566","http_referrer":"","http_user_agent":"node-fetch","requestID":"5e86b1396cf14ccce7a14d76c61af290"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 531ms","method":"POST","requestID":"083231e187fea193e0ee55ec19c9bd9f","responseTime":531,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31: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.565","http_referrer":"","http_user_agent":"node-fetch","requestID":"083231e187fea193e0ee55ec19c9bd9f"} gateway-1 | {"time_local":"24/Sep/2024:10:31:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2750","request_time":"3.793","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":"c2aa4ac06a19ad014d11ff4aa86d1c05"} gateway-1 | {"time_local":"24/Sep/2024:10:31:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2991","request_time":"8.138","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":"6829e29481401b2fbb0ddaa05e3ace24"} 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/5df90070-1971-4fae-9093-df416a6df99f"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"2c56a467607863913b35f2ba35a0f177"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5df90070-1971-4fae-9093-df416a6df99f' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2c56a467607863913b35f2ba35a0f177","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":"2c56a467607863913b35f2ba35a0f177","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 48ms","method":"POST","requestID":"2c56a467607863913b35f2ba35a0f177","responseTime":48,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"24/Sep/2024:10:31:49 +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.079","http_referrer":"","http_user_agent":"node-fetch","requestID":"2c56a467607863913b35f2ba35a0f177"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/431b45f0-0474-4929-a6f7-d7efb25fe9b0' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"attempting to shutdown gracefully","subsystem":"openfga","timestamp":1727173915.2795725} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"server exited. goodbye ๐Ÿ‘‹","subsystem":"openfga","timestamp":1727173915.304887} authorization-1 | {"level":"info","msg":"Shutting down...","subsystem":"opa","time":"2024-09-24T10:31:55Z"} authorization-1 | {"level":"info","msg":"Server shutdown.","subsystem":"opa","time":"2024-09-24T10:31:55Z"} device-1 exited with code 0 experiment-1 exited with code 0 federation-1 exited with code 0 authentication-1 exited with code 0 gateway-1 exited with code 0 authorization-1 exited with code 0